diff options
Diffstat (limited to 'passes')
-rw-r--r-- | passes/cmds/write_file.cc | 9 | ||||
-rw-r--r-- | passes/fsm/fsm_opt.cc | 2 | ||||
-rw-r--r-- | passes/opt/wreduce.cc | 4 |
3 files changed, 9 insertions, 6 deletions
diff --git a/passes/cmds/write_file.cc b/passes/cmds/write_file.cc index 3f4419724..9bf1a75a8 100644 --- a/passes/cmds/write_file.cc +++ b/passes/cmds/write_file.cc @@ -68,10 +68,13 @@ struct WriteFileFrontend : public Frontend { FILE *of = fopen(output_filename.c_str(), append_mode ? "a" : "w"); char buffer[64 * 1024]; - size_t bytes; - while (0 < (bytes = readsome(*f, buffer, sizeof(buffer)))) - fwrite(buffer, bytes, 1, of); + while (1) { + f->read(buffer, sizeof(buffer)); + if (f->gcount() <= 0) + break; + fwrite(buffer, f->gcount(), 1, of); + } fclose(of); } diff --git a/passes/fsm/fsm_opt.cc b/passes/fsm/fsm_opt.cc index 6685e8e0e..4b93d79f9 100644 --- a/passes/fsm/fsm_opt.cc +++ b/passes/fsm/fsm_opt.cc @@ -342,7 +342,7 @@ struct FsmOptPass : public Pass { for (auto &mod_it : design->modules_) { if (design->selected(mod_it.second)) for (auto &cell_it : mod_it.second->cells_) - if (cell_it.second->type == "$fsm" and design->selected(mod_it.second, cell_it.second)) + if (cell_it.second->type == "$fsm" && design->selected(mod_it.second, cell_it.second)) FsmData::optimize_fsm(cell_it.second, mod_it.second); } } diff --git a/passes/opt/wreduce.cc b/passes/opt/wreduce.cc index 89b1f8856..8f59a041e 100644 --- a/passes/opt/wreduce.cc +++ b/passes/opt/wreduce.cc @@ -32,14 +32,14 @@ struct WreduceConfig WreduceConfig() { - supported_cell_types = { + supported_cell_types = std::set<IdString>({ "$not", "$pos", "$neg", "$and", "$or", "$xor", "$xnor", "$shl", "$shr", "$sshl", "$sshr", "$shift", "$shiftx", "$lt", "$le", "$eq", "$ne", "$eqx", "$nex", "$ge", "$gt", "$add", "$sub", // "$mul", "$div", "$mod", "$pow", "$mux", "$pmux" - }; + }); } }; |