aboutsummaryrefslogtreecommitdiffstats
path: root/passes/opt/opt_share.cc
diff options
context:
space:
mode:
authorBogdan Vukobratovic <bogdan.vukobratovic@gmail.com>2019-08-03 12:28:46 +0200
committerBogdan Vukobratovic <bogdan.vukobratovic@gmail.com>2019-08-03 12:28:46 +0200
commit280c4e7794543e99244aafffc62a2dd4454bcb06 (patch)
tree25bfb330502afc441af41c0d38c4aa4b6d4b0bbd /passes/opt/opt_share.cc
parentc075486c59155d16ed278922a3752366a95246ff (diff)
downloadyosys-280c4e7794543e99244aafffc62a2dd4454bcb06.tar.gz
yosys-280c4e7794543e99244aafffc62a2dd4454bcb06.tar.bz2
yosys-280c4e7794543e99244aafffc62a2dd4454bcb06.zip
Fix spacing in opt_share tests, change wording in opt_share help
Diffstat (limited to 'passes/opt/opt_share.cc')
-rw-r--r--passes/opt/opt_share.cc16
1 files changed, 10 insertions, 6 deletions
diff --git a/passes/opt/opt_share.cc b/passes/opt/opt_share.cc
index e9a2f05f9..25b07cbbd 100644
--- a/passes/opt/opt_share.cc
+++ b/passes/opt/opt_share.cc
@@ -2,6 +2,7 @@
* yosys -- Yosys Open SYnthesis Suite
*
* Copyright (C) 2012 Clifford Wolf <clifford@clifford.at>
+ * 2019 Bogdan Vukobratovic <bogdan.vukobratovic@gmail.com>
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -308,17 +309,20 @@ void remove_multi_user_outbits(RTLIL::Module *module, dict<RTLIL::SigBit, RTLIL:
}
}
-struct OptRmdffPass : public Pass {
- OptRmdffPass() : Pass("opt_share", "merge arithmetic operators that share an operand") {}
+struct OptSharePass : public Pass {
+ OptSharePass() : Pass("opt_share", "merge arithmetic operators that share an operand") {}
void help() YS_OVERRIDE
{
// |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
log("\n");
log(" opt_share [selection]\n");
log("\n");
- log("This pass identifies arithmetic operators that share an operand and whose\n");
- log("results are used in mutually exclusive cases controlled by a multiplexer,\n");
- log("and merges them together by multiplexing the other operands.\n");
+
+ log("This pass identifies mutually exclusive $alu arithmetic cells that:\n");
+ log(" (a) share an input operand\n");
+ log(" (b) drive the same $mux, $_MUX_, or $pmux multiplexing cell allowing\n");
+ log(" the $alu cell to be merged and the multiplexer to be moved from\n");
+ log(" multiplexing its output to multiplexing the non-shared input operands.\n");
log("\n");
}
void execute(std::vector<std::string>, RTLIL::Design *design) YS_OVERRIDE
@@ -454,6 +458,6 @@ struct OptRmdffPass : public Pass {
}
}
-} OptRmdffPass;
+} OptSharePass;
PRIVATE_NAMESPACE_END