Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								c7f2e93024 
								
							 
						 
						
							
							
								
								Merge branch 'master' of github.com:YosysHQ/yosys into clifford/specify  
							
							
							
						 
						
							2019-05-06 11:46:10 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ben Widawsky 
								
							 
						 
						
							
							
							
							
								
							
							
								a98069d762 
								
							 
						 
						
							
							
								
								verilog_parser: Fix Bison warning  
							
							... 
							
							
							
							As of Bison 2.6, name-prefix is deprecated. This fixes
frontends/verilog/verilog_parser.y:99.1-34: warning: deprecated directive, use ‘%define api.prefix {frontend_verilog_yy}’ [-Wdeprecated]
 %name-prefix "frontend_verilog_yy"
For details: https://www.gnu.org/software/bison/manual/html_node/Multiple-Parsers.html 
Compile tested only.
Signed-off-by: Ben Widawsky <ben@bwidawsk.net> 
							
						 
						
							2019-05-05 19:36:27 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								70d0f389ad 
								
							 
						 
						
							
							
								
								Merge pull request  #988  from YosysHQ/clifford/fix987  
							
							... 
							
							
							
							Add approximate support for SV "var" keyword 
							
						 
						
							2019-05-04 21:58:25 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								66d6ca2de2 
								
							 
						 
						
							
							
								
								Add support for SVA "final" keyword  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-05-04 09:25:32 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								9804c86e87 
								
							 
						 
						
							
							
								
								Add approximate support for SV "var" keyword,  fixes   #987  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-05-04 07:52:51 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Udi Finkelstein 
								
							 
						 
						
							
							
							
							
								
							
							
								ac10e7d96d 
								
							 
						 
						
							
							
								
								Initial implementation of elaboration system tasks  
							
							... 
							
							
							
							(IEEE1800-2017 section 20.11)
This PR allows us to use $info/$warning/$error/$fatal **at elaboration time** within a generate block.
This is very useful to stop a synthesis of a parametrized block when an
illegal combination of parameters is chosen. 
							
						 
						
							2019-05-03 03:10:43 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								64925b4e8f 
								
							 
						 
						
							
							
								
								Improve $specrule interface  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-04-23 22:57:10 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								4575e4ad86 
								
							 
						 
						
							
							
								
								Improve $specrule interface  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-04-23 22:18:04 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								71c38d9de5 
								
							 
						 
						
							
							
								
								Add $specrule cells for $setup/$hold/$skew specify rules  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-04-23 21:36:59 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								e807e88b60 
								
							 
						 
						
							
							
								
								Rename T_{RISE,FALL}_AVG to T_{RISE,FALL}_TYP to better match verilog std nomenclature  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-04-23 21:36:59 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								3cc95fb4be 
								
							 
						 
						
							
							
								
								Add specify parser  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-04-23 21:36:59 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								fb7f02be55 
								
							 
						 
						
							
							
								
								New behavior for front-end handling of whiteboxes  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-04-20 22:24:50 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								f4abc21d8a 
								
							 
						 
						
							
							
								
								Add "whitebox" attribute, add "read_verilog -wb"  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-04-18 17:45:47 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								b02d9c2634 
								
							 
						 
						
							
							
								
								Fix handling of cases that look like sva labels,  fixes   #862  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-03-10 16:27:18 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								e7a34d342e 
								
							 
						 
						
							
							
								
								Also add support for labels on sva module items,  fixes   #699  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-03-08 22:55:09 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								22ff60850e 
								
							 
						 
						
							
							
								
								Add support for SVA labels in read_verilog  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2019-03-07 11:17:32 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								efa278e232 
								
							 
						 
						
							
							
								
								Fix typographical and grammatical errors and inconsistencies.  
							
							... 
							
							
							
							The initial list of hits was generated with the codespell command
below, and each hit was evaluated and fixed manually while taking
context into consideration.
    DIRS="kernel/ frontends/ backends/ passes/ techlibs/"
    DIRS="${DIRS} libs/ezsat/ libs/subcircuit"
    codespell $DIRS -S *.o -L upto,iff,thru,synopsys,uint
More hits were found by looking through comments and strings manually. 
							
						 
						
							2019-01-02 13:12:17 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Sylvain Munaut 
								
							 
						 
						
							
							
							
							
								
							
							
								58fb2ac818 
								
							 
						 
						
							
							
								
								verilog_parser: Properly handle recursion when processing attributes  
							
							... 
							
							
							
							Fixes  #737 
Signed-off-by: Sylvain Munaut <tnt@246tNt.com> 
						
							2018-12-14 12:48:00 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								36ea98385f 
								
							 
						 
						
							
							
								
								Add warning for SV "restrict" without "property"  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2018-11-04 15:57:17 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								5ab58d4930 
								
							 
						 
						
							
							
								
								Fix minor typo in error message  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2018-10-25 13:20:00 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Udi Finkelstein 
								
							 
						 
						
							
							
							
							
								
							
							
								536ae16c3a 
								
							 
						 
						
							
							
								
								Rename the generic "Syntax error" message from the Verilog/SystemVerilog parser into unique,  
							
							... 
							
							
							
							meaningful info on the error.
Also add 13 compilation examples that triggers each of these messages. 
							
						 
						
							2018-10-25 02:37:56 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ruben Undheim 
								
							 
						 
						
							
							
							
							
								
							
							
								736105b046 
								
							 
						 
						
							
							
								
								Handle FIXME for modport members without type directly in front  
							
							
							
						 
						
							2018-10-13 20:50:33 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ruben Undheim 
								
							 
						 
						
							
							
							
							
								
							
							
								458a94059e 
								
							 
						 
						
							
							
								
								Support for 'modports' for System Verilog interfaces  
							
							
							
						 
						
							2018-10-12 21:11:48 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ruben Undheim 
								
							 
						 
						
							
							
							
							
								
							
							
								75009ada3c 
								
							 
						 
						
							
							
								
								Synthesis support for SystemVerilog interfaces  
							
							... 
							
							
							
							This time doing the changes mostly in AST before RTLIL generation 
							
						 
						
							2018-10-12 21:11:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								8fde05dfa5 
								
							 
						 
						
							
							
								
								Add "read_verilog -noassert -noassume -assert-assumes"  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2018-09-24 20:51:16 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								eb452ffb28 
								
							 
						 
						
							
							
								
								Added support for ommited "parameter" in Verilog-2001 style parameter decl in SV mode  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2018-09-23 10:32:54 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Udi Finkelstein 
								
							 
						 
						
							
							
							
							
								
							
							
								fbfc677df3 
								
							 
						 
						
							
							
								
								Fixed all known specify/endspecify issues, without breaking 'make test'.  
							
							... 
							
							
							
							Some the of parser fixes may look strange but they were needed to avoid shift/reduce conflicts,
due to the explicit parentheses in path_delay_value, and the mintypmax values without parentheses 
							
						 
						
							2018-08-20 17:27:45 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Udi Finkelstein 
								
							 
						 
						
							
							
							
							
								
							
							
								95241c8f4d 
								
							 
						 
						
							
							
								
								Yosys can now parse  https://github.com/verilog-to-routing/vtr-verilog-to-routing/blob/master/vtr_flow/primitives.v  ,  
							
							... 
							
							
							
							(specify block ignored).
Must use 'read_verilog -defer' due to a parameter not assigned a default value. 
							
						 
						
							2018-08-20 00:08:08 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Udi Finkelstein 
								
							 
						 
						
							
							
							
							
								
							
							
								28cfc75a90 
								
							 
						 
						
							
							
								
								A few minor enhancements to specify block parsing.  
							
							... 
							
							
							
							Just remember specify blocks are parsed but ignored. 
							
						 
						
							2018-08-15 20:14:52 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3d27c1cc80 
								
							 
						 
						
							
							
								
								Merge pull request  #513  from udif/pr_reg_wire_error  
							
							... 
							
							
							
							Add error checking for reg/wire/logic misuse - PR now passes 'make test' (plus a new test) 
							
						 
						
							2018-08-15 13:35:41 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Udi Finkelstein 
								
							 
						 
						
							
							
							
							
								
							
							
								8b7580b0a1 
								
							 
						 
						
							
							
								
								Detect illegal port declaration, e.g input/output/inout keyword must be the first.  
							
							
							
						 
						
							2018-06-06 22:27:25 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Udi Finkelstein 
								
							 
						 
						
							
							
							
							
								
							
							
								73d426bc87 
								
							 
						 
						
							
							
								
								Modified errors into warnings  
							
							... 
							
							
							
							No longer false warnings for memories and assertions 
							
						 
						
							2018-06-05 18:03:22 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								2d7f3123f0 
								
							 
						 
						
							
							
								
								Add statement labels for immediate assertions  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2018-04-13 11:52:28 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								66ffc99695 
								
							 
						 
						
							
							
								
								Allow "property" in immediate assertions  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2018-04-12 14:28:28 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								5ea2c53604 
								
							 
						 
						
							
							
								
								Add read_verilog anyseq/anyconst/allseq/allconst attribute support  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2018-04-06 14:35:11 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Udi Finkelstein 
								
							 
						 
						
							
							
							
							
								
							
							
								6378e2cd46 
								
							 
						 
						
							
							
								
								First draft of Verilog parser support for specify blocks and parameters.  
							
							... 
							
							
							
							The only functionality of this code at the moment is to accept correct specify syntax and ignore it.
No part of the specify block is added to the AST 
							
						 
						
							2018-03-27 14:34:00 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Udi Finkelstein 
								
							 
						 
						
							
							
							
							
								
							
							
								2b9c75f8e3 
								
							 
						 
						
							
							
								
								This PR should be the base for discussion, do not merge it yet!  
							
							... 
							
							
							
							It correctly detects reg/wire mix and incorrect use on blocking,nonblocking assignments within blocks and assign statements.
What it DOES'T do:
Detect registers connected to output ports of instances.
Where it FAILS:
memorty nonblocking assignments causes spurious (I assume??) errors on yosys-generated "_ADDR", "_DATA", "EN" signals.
You can test it with tests/simple/reg_wire_error.v (look inside for the comments to enable/disable specific lines) 
							
						 
						
							2018-03-11 23:09:34 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								eb67a7532b 
								
							 
						 
						
							
							
								
								Add $allconst and $allseq cell types  
							
							... 
							
							
							
							Signed-off-by: Clifford Wolf <clifford@clifford.at> 
							
						 
						
							2018-02-23 13:14:47 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								777f2881d8 
								
							 
						 
						
							
							
								
								Add Verilog "automatic" keyword (ignored in synthesis)  
							
							
							
						 
						
							2017-11-23 08:51:38 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								5b6e52118c 
								
							 
						 
						
							
							
								
								Accept real-valued delay values  
							
							
							
						 
						
							2017-11-18 10:01:30 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Udi Finkelstein 
								
							 
						 
						
							
							
							
							
								
							
							
								72a08eca3d 
								
							 
						 
						
							
							
								
								Resolved classical Bison IF/THEN/ELSE shift/reduce conflict using the textbook solution  
							
							... 
							
							
							
							(Oreilly 'Flex & Bison' page 189) 
							
						 
						
							2017-09-30 06:39:07 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								2cc09161ff 
								
							 
						 
						
							
							
								
								Fix ignoring of simulation timings so that invalid module parameters cause syntax errors  
							
							
							
						 
						
							2017-09-26 01:52:59 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								8f8baccfde 
								
							 
						 
						
							
							
								
								Fix generation of vlogtb output in yosys-smtbmc for "rand reg" and "rand const reg"  
							
							
							
						 
						
							2017-06-07 12:30:24 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								129984e115 
								
							 
						 
						
							
							
								
								Fix handling of Verilog ~& and ~| operators  
							
							
							
						 
						
							2017-06-01 12:43:21 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								e91548b33e 
								
							 
						 
						
							
							
								
								Add support for localparam in module header  
							
							
							
						 
						
							2017-04-30 17:20:30 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								5b3b5ffc8c 
								
							 
						 
						
							
							
								
								Allow $anyconst, etc. in non-formal SV mode  
							
							
							
						 
						
							2017-03-01 10:47:05 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								5f1d0b1024 
								
							 
						 
						
							
							
								
								Add $live and $fair cell types, add support for s_eventually keyword  
							
							
							
						 
						
							2017-02-25 10:36:39 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								00dba4c197 
								
							 
						 
						
							
							
								
								Add support for SystemVerilog unique, unique0, and priority case  
							
							
							
						 
						
							2017-02-23 16:33:19 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								34d4e72132 
								
							 
						 
						
							
							
								
								Added SystemVerilog support for ++ and --  
							
							
							
						 
						
							2017-02-23 11:21:33 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Clifford Wolf 
								
							 
						 
						
							
							
							
							
								
							
							
								848062088c 
								
							 
						 
						
							
							
								
								Add checker support to verilog front-end  
							
							
							
						 
						
							2017-02-09 13:51:44 +01:00