mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 03:32:29 +00:00 
			
		
		
		
	read_aiger: also parse abc9_mergeability
This commit is contained in:
		
							parent
							
								
									8eb5bb258c
								
							
						
					
					
						commit
						73526a6f10
					
				
					 2 changed files with 6 additions and 2 deletions
				
			
		|  | @ -442,11 +442,13 @@ void AigerReader::parse_xaiger() | |||
| 			} | ||||
| 		} | ||||
| 		else if (c == 'r') { | ||||
| 			uint32_t dataSize YS_ATTRIBUTE(unused) = parse_xaiger_literal(f); | ||||
| 			uint32_t dataSize = parse_xaiger_literal(f); | ||||
| 			flopNum = parse_xaiger_literal(f); | ||||
| 			log_debug("flopNum = %u\n", flopNum); | ||||
| 			log_assert(dataSize == (flopNum+1) * sizeof(uint32_t)); | ||||
| 			f.ignore(flopNum * sizeof(uint32_t)); | ||||
| 			mergeability.reserve(flopNum); | ||||
| 			for (unsigned i = 0; i < flopNum; i++) | ||||
| 				mergeability.emplace_back(parse_xaiger_literal(f)); | ||||
| 		} | ||||
| 		else if (c == 'n') { | ||||
| 			parse_xaiger_literal(f); | ||||
|  | @ -774,6 +776,7 @@ void AigerReader::post_process() | |||
| 		auto ff = module->addCell(NEW_ID, "$__ABC9_FF_"); | ||||
| 		ff->setPort("\\D", d); | ||||
| 		ff->setPort("\\Q", q); | ||||
| 		ff->attributes["\\abc9_mergeability"] = mergeability[i]; | ||||
| 	} | ||||
| 
 | ||||
| 	dict<RTLIL::IdString, int> wideports_cache; | ||||
|  |  | |||
|  | @ -45,6 +45,7 @@ struct AigerReader | |||
|     std::vector<RTLIL::Wire*> outputs; | ||||
|     std::vector<RTLIL::Wire*> bad_properties; | ||||
|     std::vector<RTLIL::Cell*> boxes; | ||||
|     std::vector<int> mergeability; | ||||
| 
 | ||||
|     AigerReader(RTLIL::Design *design, std::istream &f, RTLIL::IdString module_name, RTLIL::IdString clk_name, std::string map_filename, bool wideports); | ||||
|     void parse_aiger(); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue