mirror of
https://github.com/YosysHQ/yosys
synced 2025-06-06 14:13:23 +00:00
Merge pull request #45 from alaindargelas/muxpack_no_splitfanout
Muxpack does not need splitfanout
This commit is contained in:
commit
6d8c9ec177
1 changed files with 0 additions and 26 deletions
|
@ -453,32 +453,6 @@ struct MuxpackWorker
|
||||||
make_sig_chain_next_prev();
|
make_sig_chain_next_prev();
|
||||||
find_chain_start_cells(assume_excl);
|
find_chain_start_cells(assume_excl);
|
||||||
|
|
||||||
// Deselect all cells
|
|
||||||
Pass::call(design, "select -none");
|
|
||||||
bool has_cell_to_split = false;
|
|
||||||
for (auto c : chain_start_cells) {
|
|
||||||
vector<Cell *> chain = create_chain(c);
|
|
||||||
for (auto cell : chain) {
|
|
||||||
has_cell_to_split = true;
|
|
||||||
// Select the cells that are candidate
|
|
||||||
design->select(module, cell);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Clean up
|
|
||||||
cleanup(false);
|
|
||||||
|
|
||||||
// Make sure we dup the cells with fanout, else the resulting
|
|
||||||
// transform is not logically equivalent
|
|
||||||
if (has_cell_to_split)
|
|
||||||
Pass::call(design, "splitfanout");
|
|
||||||
// Reset selection for other passes
|
|
||||||
Pass::call(design, "select -clear");
|
|
||||||
// Recreate sigmap
|
|
||||||
sigmap.set(module);
|
|
||||||
|
|
||||||
make_sig_chain_next_prev();
|
|
||||||
find_chain_start_cells(assume_excl);
|
|
||||||
|
|
||||||
// Make the actual transform
|
// Make the actual transform
|
||||||
for (auto c : chain_start_cells) {
|
for (auto c : chain_start_cells) {
|
||||||
vector<Cell *> chain = create_chain(c);
|
vector<Cell *> chain = create_chain(c);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue