diff --git a/kernel/functional.cc b/kernel/functional.cc index 178995de8..4983703e3 100644 --- a/kernel/functional.cc +++ b/kernel/functional.cc @@ -518,8 +518,8 @@ public: if (cell->type.in(ID($assert), ID($assume), ID($live), ID($fair), ID($cover), ID($check))) queue.emplace_back(cell); } - for (auto port : module->ports) { - auto *wire = module->wire(port); + for (auto riter = module->ports.rbegin(); riter != module->ports.rend(); ++riter) { + auto *wire = module->wire(*riter); if (wire && wire->port_input) { factory.add_input(wire->name, ID($input), Sort(wire->width)); }