whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								5d2b6d1394 
								
							 
						 
						
							
							
								
								flatten: simplify. NFC.  
							
							... 
							
							
							
							Flatten is non-recursive and doesn't need to keep track of handled
cells. 
							
						 
						
							2020-06-04 00:02:12 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								3c3fa774e5 
								
							 
						 
						
							
							
								
								flatten: simplify. NFC.  
							
							... 
							
							
							
							Flattening always does "non-recursive" mapping. 
							
						 
						
							2020-06-04 00:02:12 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								e561a3a76f 
								
							 
						 
						
							
							
								
								flatten: simplify. NFC.  
							
							... 
							
							
							
							The `celltypeMap` always maps `x` to `{x}`. 
							
						 
						
							2020-06-04 00:02:12 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								6783876807 
								
							 
						 
						
							
							
								
								flatten: simplify. NFC.  
							
							... 
							
							
							
							The `design` and `map` designs are always the same when flattening. 
							
						 
						
							2020-06-04 00:02:12 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								9338ff66b9 
								
							 
						 
						
							
							
								
								RTLIL: factor out RTLIL::Module::addMemory. NFC.  
							
							
							
						 
						
							2020-06-04 00:02:12 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								ebbbe2156e 
								
							 
						 
						
							
							
								
								flatten: rename techmap-related stuff. NFC.  
							
							
							
						 
						
							2020-06-04 00:02:12 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								76c4ee4ea5 
								
							 
						 
						
							
							
								
								techmap, flatten: remove dead options.  
							
							... 
							
							
							
							After splitting the passes, some options can never be activated,
and most conditions involving them become dead. Remove them, and also
all of the newly dead code. 
							
						 
						
							2020-06-04 00:02:12 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								6ac54a74fe 
								
							 
						 
						
							
							
								
								flatten: split from techmap.  
							
							... 
							
							
							
							Although the two passes started out very similar, they diverged over
time and now have little in common. Moreover, `techmap` is extremely
complex while `flatten` does not have to be, and this complexity
interferes with improving `flatten`. 
							
						 
						
							2020-06-03 15:34:03 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								fb5b070e7e 
								
							 
						 
						
							
							
								
								techmap: remove dead variable. NFC.  
							
							
							
						 
						
							2020-06-03 01:44:06 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								0a74368bfc 
								
							 
						 
						
							
							
								
								techmap: use C++11 default member initializers. NFC.  
							
							
							
						 
						
							2020-06-02 23:43:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								f3e86bb32a 
								
							 
						 
						
							
							
								
								techmap: simplify.  
							
							... 
							
							
							
							`rewrite_filename` is already called in `Frontend::extra_args`. 
							
						 
						
							2020-06-02 23:43:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									whitequark 
								
							 
						 
						
							
							
							
							
								
							
							
								68d747f767 
								
							 
						 
						
							
							
								
								techmap: use +/techmap.v instead of an ad-hoc code generator.  
							
							
							
						 
						
							2020-06-02 23:43:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									clairexen 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ff785cdb46 
								
							 
						 
						
							
							
								
								Merge pull request  #1862  from boqwxp/cleanup_techmap  
							
							... 
							
							
							
							Clean up `passes/techmap/techmap.cc` 
							
						 
						
							2020-05-31 20:40:48 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								08d9703ecb 
								
							 
						 
						
							
							
								
								abc9_ops: fix comment  
							
							
							
						 
						
							2020-05-30 09:01:03 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								ea4374a223 
								
							 
						 
						
							
							
								
								abc9_ops: update messaging (credit to @Xiretza for spotting)  
							
							
							
						 
						
							2020-05-30 08:57:48 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								b17e8495b8 
								
							 
						 
						
							
							
								
								abc9_ops: optimise to not derive unless attribute exists  
							
							
							
						 
						
							2020-05-29 17:33:10 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								d3b53bc495 
								
							 
						 
						
							
							
								
								abc9_ops: -reintegrate use SigMap to remove (* init *) from $_DFF_[NP]_  
							
							
							
						 
						
							2020-05-29 17:17:40 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								00c5ceb1f2 
								
							 
						 
						
							
							
								
								abc9_ops: -prep_xaiger exclude (* abc9_keep *) wires from toposort  
							
							
							
						 
						
							2020-05-25 16:40:53 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								7bad23f19c 
								
							 
						 
						
							
							
								
								abc9_ops: -reintegrate to preserve flop names  
							
							
							
						 
						
							2020-05-25 08:43:33 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								4f0f321169 
								
							 
						 
						
							
							
								
								abc9_ops: update comment  
							
							
							
						 
						
							2020-05-21 21:39:13 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								67fc0c3698 
								
							 
						 
						
							
							
								
								abc9: use (* abc9_keep *) instead of (* abc9_scc *); apply to $_DFF_?_  
							
							... 
							
							
							
							instead of moving them to $__ prefix 
							
						 
						
							2020-05-14 16:44:35 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e173291649 
								
							 
						 
						
							
							
								
								techmap: Replace naughty const_cast<>()s.  
							
							... 
							
							
							
							Co-Authored-By: Eddie Hung <eddie@fpgeh.com> 
							
						 
						
							2020-05-14 20:06:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								97fd304cbe 
								
							 
						 
						
							
							
								
								techmap: Replace pseudo-private member usage with the range accessor function and some naughty const_cast<>()s.  
							
							
							
						 
						
							2020-05-14 20:06:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								36bb201dd9 
								
							 
						 
						
							
							
								
								techmap: sort celltypeMap as it determines techmap order  
							
							
							
						 
						
							2020-05-14 20:06:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ce62d0751a 
								
							 
						 
						
							
							
								
								Replace std::sets using custom comparators with pool.  
							
							... 
							
							
							
							Co-Authored-By: Eddie Hung <eddie@fpgeh.com> 
							
						 
						
							2020-05-14 20:06:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								dabeb1e8a1 
								
							 
						 
						
							
							
								
								techmap: prefix special wires with backslash for use as IdString  
							
							
							
						 
						
							2020-05-14 20:06:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								bd54d67ad4 
								
							 
						 
						
							
							
								
								Further clean up passes/techmap/techmap.cc.  
							
							... 
							
							
							
							Co-Authored-By: Eddie Hung <eddie@fpgeh.com> 
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								982562ff13 
								
							 
						 
						
							
							
								
								Use emplace() for more efficient insertion into various dicts.  
							
							
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c658d9d59d 
								
							 
						 
						
							
							
								
								Build constant bits directly rather than constructing an object and copying its bits.  
							
							
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f235f212ea 
								
							 
						 
						
							
							
								
								Replace std::set with pool for cell_to_inbit and outbit_to_cell.  
							
							
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								6294621825 
								
							 
						 
						
							
							
								
								Use emplace() rather than insert().  
							
							
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								dfcb936cd5 
								
							 
						 
						
							
							
								
								Clean up pseudo-private member usage and ensure range iteration uses references where possible to avoid unnecessary copies.  
							
							
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a4755c50c3 
								
							 
						 
						
							
							
								
								Clean up extraneous buffer.  
							
							
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7857782575 
								
							 
						 
						
							
							
								
								Replace std::map with dict for unique_bit_id.  
							
							
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								6d64d768b0 
								
							 
						 
						
							
							
								
								Replace std::map with dict for port_new2old_map, port_connmap, and cellbits_to_tplbits.  
							
							
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								5cb4ae4666 
								
							 
						 
						
							
							
								
								Replace std::map with dict for connbits_map, cell_to_inbit, and outbit_to_cell.  
							
							
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c43017fc08 
								
							 
						 
						
							
							
								
								Replace std::map with dict for TechmapWires type.  
							
							
							
						 
						
							2020-05-14 20:06:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								644e55b3d3 
								
							 
						 
						
							
							
								
								Replace std::map with dict for celltypeMap.  
							
							
							
						 
						
							2020-05-14 20:06:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								67f4046c05 
								
							 
						 
						
							
							
								
								Replace std::set with pool for handled_cells and techmap_wire_names.  
							
							
							
						 
						
							2020-05-14 20:06:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								64c16f8c13 
								
							 
						 
						
							
							
								
								Replace std::map with dict for positional_ports.  
							
							
							
						 
						
							2020-05-14 20:06:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2fb4931e5b 
								
							 
						 
						
							
							
								
								Add specialized hash() for type dict and use a dict instead of a std::map for techmap_cache and techmap_do_cache.  
							
							
							
						 
						
							2020-05-14 20:06:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								437f3fb342 
								
							 
						 
						
							
							
								
								Replace std::map with dict for simplemap_mappers.  
							
							
							
						 
						
							2020-05-14 20:06:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								99b586b283 
								
							 
						 
						
							
							
								
								Use nullptr instead of NULL in passes/techmap/techmap.cc.  
							
							
							
						 
						
							2020-05-14 20:06:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								5f7f213c7f 
								
							 
						 
						
							
							
								
								Replace std::string and RTLIL::IdString with IdString in passes/techmap/techmap.cc.  
							
							... 
							
							
							
							Co-Authored-By: Eddie Hung <eddie@fpgeh.com> 
							
						 
						
							2020-05-14 20:06:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e49fdee404 
								
							 
						 
						
							
							
								
								Do not modify design modules while iterating over modules().  
							
							... 
							
							
							
							Co-Authored-By: Eddie Hung <eddie@fpgeh.com> 
							
						 
						
							2020-05-14 20:06:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alberto Gonzalez 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								985a29ff3b 
								
							 
						 
						
							
							
								
								Clean up pseudo-private member usage, superfluous std::vector instantiation, and RTLIL::id2cstr() usage in passes/techmap/techmap.cc.  
							
							
							
						 
						
							2020-05-14 20:06:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								02df0198b6 
								
							 
						 
						
							
							
								
								abc9_ops: -prep_hier to create unmap module that removes Q's (* init *)  
							
							
							
						 
						
							2020-05-14 10:33:57 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								13f9d65b6f 
								
							 
						 
						
							
							
								
								abc9: preserve $_DFF_?_.Q's (* init *); rely on clean to remove it  
							
							
							
						 
						
							2020-05-14 10:33:57 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								fa31e84112 
								
							 
						 
						
							
							
								
								Fix broken test when ignoring abc9_flop with init == 1'b1  
							
							
							
						 
						
							2020-05-14 10:33:57 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Hung 
								
							 
						 
						
							
							
							
							
								
							
							
								97a0a04314 
								
							 
						 
						
							
							
								
								abc9_ops/xaiger: further reducing Module::derive() calls by ...  
							
							... 
							
							
							
							replacing _all_ (* abc9_box *) instantiations with their derived types 
							
						 
						
							2020-05-14 10:33:57 -07:00