aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--techlibs/xilinx/synth_xilinx.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/techlibs/xilinx/synth_xilinx.cc b/techlibs/xilinx/synth_xilinx.cc
index 9e4a86a84..d787687aa 100644
--- a/techlibs/xilinx/synth_xilinx.cc
+++ b/techlibs/xilinx/synth_xilinx.cc
@@ -126,6 +126,7 @@ struct SynthXilinxPass : public Pass
log("\n");
log(" map_cells:\n");
log(" pmux2shiftx (without '-nosrl' and '-nomux' only)\n");
+ log(" bitblast_shiftx (without '-nosrl' and '-nomux' only)\n");
log(" simplemap t:$dff t:$dffe (without '-nosrl' only)\n");
log(" opt_expr -mux_undef (without '-nosrl' only)\n");
log(" shregmap -tech xilinx -minlen 3 (without '-nosrl' only)\n");
@@ -309,8 +310,10 @@ struct SynthXilinxPass : public Pass
// cells for identifying variable-length shift registers,
// so attempt to convert $pmux-es to the former
// Also: wide multiplexer inference benefits from this too
- if (!nosrl || !nomux)
+ if (!nosrl || !nomux) {
Pass::call(design, "pmux2shiftx");
+ Pass::call(design, "bitblast_shiftx");
+ }
if (!nosrl) {
// shregmap operates on bit-level flops, not word-level,