diff options
author | Miodrag Milanović <mmicko@gmail.com> | 2023-01-23 16:55:17 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-23 16:55:17 +0100 |
commit | 8180cc4325a6650ef3f8c89c20e845b59cd9bc42 (patch) | |
tree | 9b21825f55813c58910ed23f45adc2570a2bd2c3 /passes/cmds | |
parent | 245884a1011fe45b00bbb9cacd0111eb014adadf (diff) | |
parent | d6c7aa0e3d9e64827a8305610bedcc9a9df88a49 (diff) | |
download | yosys-8180cc4325a6650ef3f8c89c20e845b59cd9bc42.tar.gz yosys-8180cc4325a6650ef3f8c89c20e845b59cd9bc42.tar.bz2 yosys-8180cc4325a6650ef3f8c89c20e845b59cd9bc42.zip |
Merge pull request #3624 from jix/sim_yw
Changes to support SBY trace generation with the sim command
Diffstat (limited to 'passes/cmds')
-rw-r--r-- | passes/cmds/setundef.cc | 10 | ||||
-rw-r--r-- | passes/cmds/xprop.cc | 3 |
2 files changed, 11 insertions, 2 deletions
diff --git a/passes/cmds/setundef.cc b/passes/cmds/setundef.cc index 590a7eb1d..7293002f3 100644 --- a/passes/cmds/setundef.cc +++ b/passes/cmds/setundef.cc @@ -502,7 +502,15 @@ struct SetundefPass : public Pass { } } - module->rewrite_sigspecs(worker); + for (auto &it : module->cells_) + if (!it.second->get_bool_attribute(ID::xprop_decoder)) + it.second->rewrite_sigspecs(worker); + for (auto &it : module->processes) + it.second->rewrite_sigspecs(worker); + for (auto &it : module->connections_) { + worker(it.first); + worker(it.second); + } if (worker.next_bit_mode == MODE_ANYSEQ || worker.next_bit_mode == MODE_ANYCONST) { diff --git a/passes/cmds/xprop.cc b/passes/cmds/xprop.cc index 5dee72e1b..5e78ff9fc 100644 --- a/passes/cmds/xprop.cc +++ b/passes/cmds/xprop.cc @@ -252,7 +252,8 @@ struct XpropWorker } if (!driven_orig.empty()) { - module->addBwmux(NEW_ID, driven_enc.is_1, Const(State::Sx, GetSize(driven_orig)), driven_enc.is_x, driven_orig); + auto decoder = module->addBwmux(NEW_ID, driven_enc.is_1, Const(State::Sx, GetSize(driven_orig)), driven_enc.is_x, driven_orig); + decoder->set_bool_attribute(ID::xprop_decoder); } if (!driven_never_x.first.empty()) { module->connect(driven_never_x); |