opt: twines

This commit is contained in:
Emil J. Tywoniak 2026-06-17 00:05:43 +02:00
parent 7baf458ffe
commit 44ce4c2356
2 changed files with 45 additions and 45 deletions

View File

@ -44,20 +44,20 @@ using MergeableTypes = StaticCellTypes::Categories::Category;
// is intentionally not included, so $anyinit stays excluded
static constexpr MergeableTypes build_mergeable_types(bool nomux) {
auto c = StaticCellTypes::categories.is_known;
c.set_id(ID($anyinit), false);
c.set_id(ID($tribuf), false);
c.set_id(ID($_TBUF_), false);
c.set_id(ID($anyseq), false);
c.set_id(ID($anyconst), false);
c.set_id(ID($allseq), false);
c.set_id(ID($allconst), false);
c.set_id(ID($connect), false);
c.set_id(ID($input_port), false);
c.set_id(ID($output_port), false);
c.set_id(ID($public), false);
c.set_id(TW::$anyinit, false);
c.set_id(TW::$tribuf, false);
c.set_id(TW::$_TBUF_, false);
c.set_id(TW::$anyseq, false);
c.set_id(TW::$anyconst, false);
c.set_id(TW::$allseq, false);
c.set_id(TW::$allconst, false);
c.set_id(TW::$connect, false);
c.set_id(TW::$input_port, false);
c.set_id(TW::$output_port, false);
c.set_id(TW::$public, false);
if (nomux) {
c.set_id(ID($mux), false);
c.set_id(ID($pmux), false);
c.set_id(TW::$mux, false);
c.set_id(TW::$pmux, false);
}
return c;
}

View File

@ -1532,45 +1532,45 @@ struct SharePass : public Pass {
config.opt_aggressive = false;
config.opt_fast = false;
config.generic_uni_ops.set_id(ID($not));
// config.generic_uni_ops.set_id(ID($pos));
config.generic_uni_ops.set_id(ID($neg));
config.generic_uni_ops.set_id(TW::$not);
// config.generic_uni_ops.set_id(TW::$pos);
config.generic_uni_ops.set_id(TW::$neg);
config.generic_cbin_ops.set_id(ID($and));
config.generic_cbin_ops.set_id(ID($or));
config.generic_cbin_ops.set_id(ID($xor));
config.generic_cbin_ops.set_id(ID($xnor));
config.generic_cbin_ops.set_id(TW::$and);
config.generic_cbin_ops.set_id(TW::$or);
config.generic_cbin_ops.set_id(TW::$xor);
config.generic_cbin_ops.set_id(TW::$xnor);
config.generic_bin_ops.set_id(ID($shl));
config.generic_bin_ops.set_id(ID($shr));
config.generic_bin_ops.set_id(ID($sshl));
config.generic_bin_ops.set_id(ID($sshr));
config.generic_bin_ops.set_id(TW::$shl);
config.generic_bin_ops.set_id(TW::$shr);
config.generic_bin_ops.set_id(TW::$sshl);
config.generic_bin_ops.set_id(TW::$sshr);
config.generic_bin_ops.set_id(ID($lt));
config.generic_bin_ops.set_id(ID($le));
config.generic_bin_ops.set_id(ID($eq));
config.generic_bin_ops.set_id(ID($ne));
config.generic_bin_ops.set_id(ID($eqx));
config.generic_bin_ops.set_id(ID($nex));
config.generic_bin_ops.set_id(ID($ge));
config.generic_bin_ops.set_id(ID($gt));
config.generic_bin_ops.set_id(TW::$lt);
config.generic_bin_ops.set_id(TW::$le);
config.generic_bin_ops.set_id(TW::$eq);
config.generic_bin_ops.set_id(TW::$ne);
config.generic_bin_ops.set_id(TW::$eqx);
config.generic_bin_ops.set_id(TW::$nex);
config.generic_bin_ops.set_id(TW::$ge);
config.generic_bin_ops.set_id(TW::$gt);
config.generic_cbin_ops.set_id(ID($add));
config.generic_cbin_ops.set_id(ID($mul));
config.generic_cbin_ops.set_id(TW::$add);
config.generic_cbin_ops.set_id(TW::$mul);
config.generic_bin_ops.set_id(ID($sub));
config.generic_bin_ops.set_id(ID($div));
config.generic_bin_ops.set_id(ID($mod));
config.generic_bin_ops.set_id(ID($divfloor));
config.generic_bin_ops.set_id(ID($modfloor));
// config.generic_bin_ops.set_id(ID($pow));
config.generic_bin_ops.set_id(TW::$sub);
config.generic_bin_ops.set_id(TW::$div);
config.generic_bin_ops.set_id(TW::$mod);
config.generic_bin_ops.set_id(TW::$divfloor);
config.generic_bin_ops.set_id(TW::$modfloor);
// config.generic_bin_ops.set_id(TW::$pow);
config.generic_uni_ops.set_id(ID($logic_not));
config.generic_cbin_ops.set_id(ID($logic_and));
config.generic_cbin_ops.set_id(ID($logic_or));
config.generic_uni_ops.set_id(TW::$logic_not);
config.generic_cbin_ops.set_id(TW::$logic_and);
config.generic_cbin_ops.set_id(TW::$logic_or);
config.generic_other_ops.set_id(ID($alu));
config.generic_other_ops.set_id(ID($macc));
config.generic_other_ops.set_id(TW::$alu);
config.generic_other_ops.set_id(TW::$macc);
log_header(design, "Executing SHARE pass (SAT-based resource sharing).\n");