cleaner assign with transparency

This commit is contained in:
Jakub Janeczko 2026-07-23 19:00:03 +02:00
parent 3349e9c8ea
commit d479af29cf
No known key found for this signature in database
GPG Key ID: D68C3D5A75B4C697
1 changed files with 8 additions and 0 deletions

View File

@ -855,6 +855,14 @@ void dump_memory(std::ostream &f, std::string indent, Mem &mem)
os << temp_id;
os << ";\n";
clk_to_lof_body[""].push_back(os.str());
} else if (bypass_part_width == 1) {
std::ostringstream os;
os << "assign ";
dump_sigspec(os, port.data);
os << " = ";
os << stringf("(%s & %s) | (~%s & %s)", bypass_valid_id, bypass_data_id, bypass_valid_id, temp_id);
os << ";\n";
clk_to_lof_body[""].push_back(os.str());
} else {
for (int sub = 0; sub < bypass_valid_width; sub++) {
int seg_beg = sub * bypass_part_width;