mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 03:32:29 +00:00 
			
		
		
		
	cxxrtl_backend: respect sync $print priority
				
					
				
			We add a new flow graph node type, PRINT_SYNC, as they don't get handled with regular CELL_EVALs. We could probably move this grouping out of the dump method.
This commit is contained in:
		
							parent
							
								
									04582f2fb7
								
							
						
					
					
						commit
						ce245b5105
					
				
					 3 changed files with 68 additions and 42 deletions
				
			
		|  | @ -1006,7 +1006,7 @@ void dump_cell_expr_binop(std::ostream &f, std::string indent, RTLIL::Cell *cell | |||
| 	f << stringf(";\n"); | ||||
| } | ||||
| 
 | ||||
| void dump_cell_expr_print(std::ostream &f, std::string indent, RTLIL::Cell *cell) | ||||
| void dump_cell_expr_print(std::ostream &f, std::string indent, const RTLIL::Cell *cell) | ||||
| { | ||||
| 	Fmt fmt = {}; | ||||
| 	fmt.parse_rtlil(cell); | ||||
|  | @ -1893,7 +1893,7 @@ void dump_cell(std::ostream &f, std::string indent, RTLIL::Cell *cell) | |||
| 	} | ||||
| } | ||||
| 
 | ||||
| void dump_sync_print(std::ostream &f, std::string indent, const RTLIL::SigSpec &trg, const RTLIL::Const &polarity, std::vector<RTLIL::Cell*> &cells) | ||||
| void dump_sync_print(std::ostream &f, std::string indent, const RTLIL::SigSpec &trg, const RTLIL::Const &polarity, std::vector<const RTLIL::Cell*> &cells) | ||||
| { | ||||
| 	f << stringf("%s" "always @(", indent.c_str()); | ||||
| 	for (int i = 0; i < trg.size(); i++) { | ||||
|  | @ -2102,7 +2102,7 @@ void dump_process(std::ostream &f, std::string indent, RTLIL::Process *proc, boo | |||
| 
 | ||||
| void dump_module(std::ostream &f, std::string indent, RTLIL::Module *module) | ||||
| { | ||||
| 	std::map<std::pair<RTLIL::SigSpec, RTLIL::Const>, std::vector<RTLIL::Cell*>> sync_print_cells; | ||||
| 	std::map<std::pair<RTLIL::SigSpec, RTLIL::Const>, std::vector<const RTLIL::Cell*>> sync_print_cells; | ||||
| 
 | ||||
| 	reg_wires.clear(); | ||||
| 	reset_auto_counter(module); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue