mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	Consistent use of 'override' for virtual methods in derived classes.
o Not all derived methods were marked 'override', but it is a great feature of C++11 that we should make use of. o While at it: touched header files got a -*- c++ -*- for emacs to provide support for that language. o use YS_OVERRIDE for all override keywords (though we should probably use the plain keyword going forward now that C++11 is established)
This commit is contained in:
		
							parent
							
								
									323f6f6f60
								
							
						
					
					
						commit
						3aa4484a3c
					
				
					 170 changed files with 414 additions and 416 deletions
				
			
		| 
						 | 
				
			
			@ -1248,7 +1248,7 @@ void abc_module(RTLIL::Design *design, RTLIL::Module *current_module, std::strin
 | 
			
		|||
 | 
			
		||||
struct AbcPass : public Pass {
 | 
			
		||||
	AbcPass() : Pass("abc", "use ABC for technology mapping") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -1420,7 +1420,7 @@ struct AbcPass : public Pass {
 | 
			
		|||
		log("[1] http://www.eecs.berkeley.edu/~alanmi/abc/\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing ABC pass (technology mapping using ABC).\n");
 | 
			
		||||
		log_push();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,7 +25,7 @@ PRIVATE_NAMESPACE_BEGIN
 | 
			
		|||
 | 
			
		||||
struct AigmapPass : public Pass {
 | 
			
		||||
	AigmapPass() : Pass("aigmap", "map logic to and-inverter-graph circuit") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log("\n");
 | 
			
		||||
		log("    aigmap [options] [selection]\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -37,7 +37,7 @@ struct AigmapPass : public Pass {
 | 
			
		|||
		log("        Enable creation of $_NAND_ cells\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		bool nand_mode = false;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -539,7 +539,7 @@ struct AlumaccWorker
 | 
			
		|||
 | 
			
		||||
struct AlumaccPass : public Pass {
 | 
			
		||||
	AlumaccPass() : Pass("alumacc", "extract ALU and MACC cells") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -549,7 +549,7 @@ struct AlumaccPass : public Pass {
 | 
			
		|||
		log("and $macc cells.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing ALUMACC pass (create $alu and $macc cells).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -81,7 +81,7 @@ struct AttrmapAction {
 | 
			
		|||
 | 
			
		||||
struct AttrmapTocase : AttrmapAction {
 | 
			
		||||
	string name;
 | 
			
		||||
	virtual bool apply(IdString &id, Const&) {
 | 
			
		||||
	bool apply(IdString &id, Const&) YS_OVERRIDE {
 | 
			
		||||
		if (match_name(name, id, true))
 | 
			
		||||
			id = RTLIL::escape_id(name);
 | 
			
		||||
		return true;
 | 
			
		||||
| 
						 | 
				
			
			@ -90,7 +90,7 @@ struct AttrmapTocase : AttrmapAction {
 | 
			
		|||
 | 
			
		||||
struct AttrmapRename : AttrmapAction {
 | 
			
		||||
	string old_name, new_name;
 | 
			
		||||
	virtual bool apply(IdString &id, Const&) {
 | 
			
		||||
	bool apply(IdString &id, Const&) YS_OVERRIDE {
 | 
			
		||||
		if (match_name(old_name, id))
 | 
			
		||||
			id = RTLIL::escape_id(new_name);
 | 
			
		||||
		return true;
 | 
			
		||||
| 
						 | 
				
			
			@ -101,7 +101,7 @@ struct AttrmapMap : AttrmapAction {
 | 
			
		|||
	bool imap;
 | 
			
		||||
	string old_name, new_name;
 | 
			
		||||
	string old_value, new_value;
 | 
			
		||||
	virtual bool apply(IdString &id, Const &val) {
 | 
			
		||||
	bool apply(IdString &id, Const &val) YS_OVERRIDE {
 | 
			
		||||
		if (match_name(old_name, id) && match_value(old_value, val, true)) {
 | 
			
		||||
			id = RTLIL::escape_id(new_name);
 | 
			
		||||
			val = make_value(new_value);
 | 
			
		||||
| 
						 | 
				
			
			@ -112,7 +112,7 @@ struct AttrmapMap : AttrmapAction {
 | 
			
		|||
 | 
			
		||||
struct AttrmapRemove : AttrmapAction {
 | 
			
		||||
	string name, value;
 | 
			
		||||
	virtual bool apply(IdString &id, Const &val) {
 | 
			
		||||
	bool apply(IdString &id, Const &val) YS_OVERRIDE {
 | 
			
		||||
		return !(match_name(name, id) && match_value(value, val));
 | 
			
		||||
	}
 | 
			
		||||
};
 | 
			
		||||
| 
						 | 
				
			
			@ -144,7 +144,7 @@ void attrmap_apply(string objname, vector<std::unique_ptr<AttrmapAction>> &actio
 | 
			
		|||
 | 
			
		||||
struct AttrmapPass : public Pass {
 | 
			
		||||
	AttrmapPass() : Pass("attrmap", "renaming attributes") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -179,7 +179,7 @@ struct AttrmapPass : public Pass {
 | 
			
		|||
		log("            -imap keep=\"false\" keep=0 -remove keep=0\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing ATTRMAP pass (move or copy attributes).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,7 +25,7 @@ PRIVATE_NAMESPACE_BEGIN
 | 
			
		|||
 | 
			
		||||
struct AttrmvcpPass : public Pass {
 | 
			
		||||
	AttrmvcpPass() : Pass("attrmvcp", "move or copy attributes from wires to driving cells") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log("\n");
 | 
			
		||||
		log("    attrmvcp [options] [selection]\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -53,7 +53,7 @@ struct AttrmvcpPass : public Pass {
 | 
			
		|||
		log("        multiple times.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing ATTRMVCP pass (move or copy attributes).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,7 +25,7 @@ PRIVATE_NAMESPACE_BEGIN
 | 
			
		|||
 | 
			
		||||
struct DeminoutPass : public Pass {
 | 
			
		||||
	DeminoutPass() : Pass("deminout", "demote inout ports to input or output") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log("\n");
 | 
			
		||||
		log("    deminout [options] [selection]\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -33,7 +33,7 @@ struct DeminoutPass : public Pass {
 | 
			
		|||
		log("\"Demote\" inout ports to input or output ports, if possible.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing DEMINOUT pass (demote inout ports to input or output).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -253,7 +253,7 @@ struct Dff2dffeWorker
 | 
			
		|||
 | 
			
		||||
struct Dff2dffePass : public Pass {
 | 
			
		||||
	Dff2dffePass() : Pass("dff2dffe", "transform $dff cells to $dffe cells") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -284,7 +284,7 @@ struct Dff2dffePass : public Pass {
 | 
			
		|||
		log("        $_DFFE_[NP]_.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing DFF2DFFE pass (transform $dff to $dffe where applicable).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -26,7 +26,7 @@ PRIVATE_NAMESPACE_BEGIN
 | 
			
		|||
 | 
			
		||||
struct Dff2dffsPass : public Pass {
 | 
			
		||||
	Dff2dffsPass() : Pass("dff2dffs", "process sync set/reset with SR over CE priority") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log("\n");
 | 
			
		||||
		log("    dff2dffs [options] [selection]\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -35,7 +35,7 @@ struct Dff2dffsPass : public Pass {
 | 
			
		|||
		log("dff2dffe for SR over CE priority.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing dff2dffs pass (merge synchronous set/reset into FF cells).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,7 +25,7 @@ PRIVATE_NAMESPACE_BEGIN
 | 
			
		|||
 | 
			
		||||
struct DffinitPass : public Pass {
 | 
			
		||||
	DffinitPass() : Pass("dffinit", "set INIT param on FF cells") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -44,7 +44,7 @@ struct DffinitPass : public Pass {
 | 
			
		|||
		log("        mode.)\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing DFFINIT pass (set INIT param on FF cells).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -537,7 +537,7 @@ static void dfflibmap(RTLIL::Design *design, RTLIL::Module *module, bool prepare
 | 
			
		|||
 | 
			
		||||
struct DfflibmapPass : public Pass {
 | 
			
		||||
	DfflibmapPass() : Pass("dfflibmap", "technology mapping of flip-flops") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log("\n");
 | 
			
		||||
		log("    dfflibmap [-prepare] -liberty <file> [selection]\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -553,7 +553,7 @@ struct DfflibmapPass : public Pass {
 | 
			
		|||
		log("liberty file.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing DFFLIBMAP pass (mapping DFF cells to sequential cells from liberty file).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -176,7 +176,7 @@ void adff_worker(SigMap &sigmap, Module *module, Cell *cell)
 | 
			
		|||
 | 
			
		||||
struct Dffsr2dffPass : public Pass {
 | 
			
		||||
	Dffsr2dffPass() : Pass("dffsr2dff", "convert DFFSR cells to simpler FF cell types") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -186,7 +186,7 @@ struct Dffsr2dffPass : public Pass {
 | 
			
		|||
		log("$_DFF_???_) to simpler FF cell types when any of the set/reset inputs is unused.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing DFFSR2DFF pass (mapping DFFSR cells to simpler FFs).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -352,7 +352,7 @@ bool compareSortNeedleList(RTLIL::Module *left, RTLIL::Module *right)
 | 
			
		|||
 | 
			
		||||
struct ExtractPass : public Pass {
 | 
			
		||||
	ExtractPass() : Pass("extract", "find subcircuits and replace them with cells") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -440,7 +440,7 @@ struct ExtractPass : public Pass {
 | 
			
		|||
		log("See 'help techmap' for a pass that does the opposite thing.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing EXTRACT pass (map subcircuits to cells).\n");
 | 
			
		||||
		log_push();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -559,7 +559,7 @@ void counter_worker(
 | 
			
		|||
 | 
			
		||||
struct ExtractCounterPass : public Pass {
 | 
			
		||||
	ExtractCounterPass() : Pass("extract_counter", "Extract GreenPak4 counter cells") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -578,7 +578,7 @@ struct ExtractCounterPass : public Pass {
 | 
			
		|||
		log("\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing EXTRACT_COUNTER pass (find counters in netlist).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -531,7 +531,7 @@ struct ExtractFaWorker
 | 
			
		|||
 | 
			
		||||
struct ExtractFaPass : public Pass {
 | 
			
		||||
	ExtractFaPass() : Pass("extract_fa", "find and extract full/half adders") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -553,7 +553,7 @@ struct ExtractFaPass : public Pass {
 | 
			
		|||
		log("        Verbose output\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		ExtractFaConfig config;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -33,7 +33,7 @@ struct ExtractReducePass : public Pass
 | 
			
		|||
 | 
			
		||||
	ExtractReducePass() : Pass("extract_reduce", "converts gate chains into $reduce_* cells") { }
 | 
			
		||||
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -62,7 +62,7 @@ struct ExtractReducePass : public Pass
 | 
			
		|||
				(cell->type == "$_XOR_" && gt == GateType::Xor);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing EXTRACT_REDUCE pass.\n");
 | 
			
		||||
		log_push();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -55,7 +55,7 @@ void hilomap_worker(RTLIL::SigSpec &sig)
 | 
			
		|||
 | 
			
		||||
struct HilomapPass : public Pass {
 | 
			
		||||
	HilomapPass() : Pass("hilomap", "technology mapping of constant hi- and/or lo-drivers") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log("\n");
 | 
			
		||||
		log("    hilomap [options] [selection]\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -74,7 +74,7 @@ struct HilomapPass : public Pass {
 | 
			
		|||
		log("        each constant bit.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing HILOMAP pass (mapping to constant drivers).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,7 +25,7 @@ PRIVATE_NAMESPACE_BEGIN
 | 
			
		|||
 | 
			
		||||
struct InsbufPass : public Pass {
 | 
			
		||||
	InsbufPass() : Pass("insbuf", "insert buffer cells for connected wires") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log("\n");
 | 
			
		||||
		log("    insbuf [options] [selection]\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -37,7 +37,7 @@ struct InsbufPass : public Pass {
 | 
			
		|||
		log("        call to \"clean\" will remove all $_BUF_ in the design.)\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing INSBUF pass (insert buffer cells for connected wires).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -34,7 +34,7 @@ void split_portname_pair(std::string &port1, std::string &port2)
 | 
			
		|||
 | 
			
		||||
struct IopadmapPass : public Pass {
 | 
			
		||||
	IopadmapPass() : Pass("iopadmap", "technology mapping of i/o pads (or buffers)") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log("\n");
 | 
			
		||||
		log("    iopadmap [options] [selection]\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -78,7 +78,7 @@ struct IopadmapPass : public Pass {
 | 
			
		|||
		log("Tristate PADS (-toutpad, -tinoutpad) always operate in -bits mode.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing IOPADMAP pass (mapping inputs/outputs to IO-PAD cells).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -56,7 +56,7 @@ int lut2mux(Cell *cell)
 | 
			
		|||
 | 
			
		||||
struct Lut2muxPass : public Pass {
 | 
			
		||||
	Lut2muxPass() : Pass("lut2mux", "convert $lut to $_MUX_") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -65,7 +65,7 @@ struct Lut2muxPass : public Pass {
 | 
			
		|||
		log("This pass converts $lut cells to $_MUX_ gates.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing LUT2MUX pass (convert $lut to $_MUX_).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -365,7 +365,7 @@ PRIVATE_NAMESPACE_BEGIN
 | 
			
		|||
 | 
			
		||||
struct MaccmapPass : public Pass {
 | 
			
		||||
	MaccmapPass() : Pass("maccmap", "mapping macc cells") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -375,7 +375,7 @@ struct MaccmapPass : public Pass {
 | 
			
		|||
		log("is used then the $macc cell is mapped to $add, $sub, etc. cells instead.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		bool unmap_mode = false;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -561,7 +561,7 @@ struct MuxcoverWorker
 | 
			
		|||
 | 
			
		||||
struct MuxcoverPass : public Pass {
 | 
			
		||||
	MuxcoverPass() : Pass("muxcover", "cover trees of MUX cells with wider MUXes") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -579,7 +579,7 @@ struct MuxcoverPass : public Pass {
 | 
			
		|||
		log("        less efficient than the original circuit.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing MUXCOVER pass (mapping to wider MUXes).\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -129,7 +129,7 @@ struct NlutmapWorker
 | 
			
		|||
 | 
			
		||||
struct NlutmapPass : public Pass {
 | 
			
		||||
	NlutmapPass() : Pass("nlutmap", "map to LUTs of different sizes") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -149,7 +149,7 @@ struct NlutmapPass : public Pass {
 | 
			
		|||
		log("to generic logic gates ($_AND_, etc.).\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		NlutmapConfig config;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -67,7 +67,7 @@ static SigSpec recursive_mux_generator(Module *module, const SigSpec &sig_data,
 | 
			
		|||
 | 
			
		||||
struct PmuxtreePass : public Pass {
 | 
			
		||||
	PmuxtreePass() : Pass("pmuxtree", "transform $pmux cells to trees of $mux cells") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -76,7 +76,7 @@ struct PmuxtreePass : public Pass {
 | 
			
		|||
		log("This pass transforms $pmux cells to a trees of $mux cells.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing PMUXTREE pass.\n");
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -391,7 +391,7 @@ struct ShregmapWorker
 | 
			
		|||
 | 
			
		||||
struct ShregmapPass : public Pass {
 | 
			
		||||
	ShregmapPass() : Pass("shregmap", "map shift registers") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -449,7 +449,7 @@ struct ShregmapPass : public Pass {
 | 
			
		|||
		log("        map to greenpak4 shift registers.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		ShregmapOptions opts;
 | 
			
		||||
		string clkpol, enpol;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -575,7 +575,7 @@ PRIVATE_NAMESPACE_BEGIN
 | 
			
		|||
 | 
			
		||||
struct SimplemapPass : public Pass {
 | 
			
		||||
	SimplemapPass() : Pass("simplemap", "mapping simple coarse-grain cells") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -590,7 +590,7 @@ struct SimplemapPass : public Pass {
 | 
			
		|||
		log("  $sr, $ff, $dff, $dffsr, $adff, $dlatch\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing SIMPLEMAP pass (map simple cells to gate primitives).\n");
 | 
			
		||||
		extra_args(args, 1, design);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -891,7 +891,7 @@ struct TechmapWorker
 | 
			
		|||
 | 
			
		||||
struct TechmapPass : public Pass {
 | 
			
		||||
	TechmapPass() : Pass("techmap", "generic technology mapper") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -1022,7 +1022,7 @@ struct TechmapPass : public Pass {
 | 
			
		|||
		log("essentially techmap but using the design itself as map library).\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing TECHMAP pass (map to technology primitives).\n");
 | 
			
		||||
		log_push();
 | 
			
		||||
| 
						 | 
				
			
			@ -1141,7 +1141,7 @@ struct TechmapPass : public Pass {
 | 
			
		|||
 | 
			
		||||
struct FlattenPass : public Pass {
 | 
			
		||||
	FlattenPass() : Pass("flatten", "flatten design") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -1155,7 +1155,7 @@ struct FlattenPass : public Pass {
 | 
			
		|||
		log("flattened by this command.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		log_header(design, "Executing FLATTEN pass (flatten design).\n");
 | 
			
		||||
		log_push();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -139,7 +139,7 @@ struct TribufWorker {
 | 
			
		|||
 | 
			
		||||
struct TribufPass : public Pass {
 | 
			
		||||
	TribufPass() : Pass("tribuf", "infer tri-state buffers") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -156,7 +156,7 @@ struct TribufPass : public Pass {
 | 
			
		|||
		log("        to non-tristate logic. this option implies -merge.\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		TribufConfig config;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,7 +25,7 @@ PRIVATE_NAMESPACE_BEGIN
 | 
			
		|||
 | 
			
		||||
struct ZinitPass : public Pass {
 | 
			
		||||
	ZinitPass() : Pass("zinit", "add inverters so all FF are zero-initialized") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
	void help() YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		//   |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
 | 
			
		||||
		log("\n");
 | 
			
		||||
| 
						 | 
				
			
			@ -37,7 +37,7 @@ struct ZinitPass : public Pass {
 | 
			
		|||
		log("        also add zero initialization to uninitialized FFs\n");
 | 
			
		||||
		log("\n");
 | 
			
		||||
	}
 | 
			
		||||
	virtual void execute(std::vector<std::string> args, RTLIL::Design *design)
 | 
			
		||||
	void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
 | 
			
		||||
	{
 | 
			
		||||
		bool all_mode = false;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue