mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 13:29:12 +00:00 
			
		
		
		
	abc9: fix memory leak
This commit is contained in:
		
							parent
							
								
									ccc83d99ba
								
							
						
					
					
						commit
						1f7893bd8c
					
				
					 1 changed files with 2 additions and 4 deletions
				
			
		| 
						 | 
					@ -416,13 +416,11 @@ void abc9_module(RTLIL::Design *design, RTLIL::Module *module, std::string scrip
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		dict<IdString, bool> abc9_box;
 | 
							dict<IdString, bool> abc9_box;
 | 
				
			||||||
		vector<RTLIL::Cell*> boxes;
 | 
							vector<RTLIL::Cell*> boxes;
 | 
				
			||||||
		for (auto it = module->cells_.begin(); it != module->cells_.end(); ) {
 | 
							for (auto cell : module->cells().to_vector()) {
 | 
				
			||||||
			auto cell = it->second;
 | 
					 | 
				
			||||||
			if (cell->type.in(ID($_AND_), ID($_NOT_), ID($__ABC9_FF_))) {
 | 
								if (cell->type.in(ID($_AND_), ID($_NOT_), ID($__ABC9_FF_))) {
 | 
				
			||||||
				it = module->cells_.erase(it);
 | 
									module->remove(cell);
 | 
				
			||||||
				continue;
 | 
									continue;
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			++it;
 | 
					 | 
				
			||||||
			RTLIL::Module* box_module = design->module(cell->type);
 | 
								RTLIL::Module* box_module = design->module(cell->type);
 | 
				
			||||||
			auto jt = abc9_box.find(cell->type);
 | 
								auto jt = abc9_box.find(cell->type);
 | 
				
			||||||
			if (jt == abc9_box.end())
 | 
								if (jt == abc9_box.end())
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue