diff options
author | Marcelina KoĆcielnicka <mwk@0x04.net> | 2021-05-27 23:43:25 +0200 |
---|---|---|
committer | Marcelina KoĆcielnicka <mwk@0x04.net> | 2021-05-28 00:40:56 +0200 |
commit | cbf6b719fe85ce8544f9bb0796711f3f45638862 (patch) | |
tree | e5123705ba397f310a10c133d02fd4360c42800d /kernel | |
parent | 055ba748bcf8c77bff15bda0de49c0b4b3722bba (diff) | |
download | yosys-cbf6b719fe85ce8544f9bb0796711f3f45638862.tar.gz yosys-cbf6b719fe85ce8544f9bb0796711f3f45638862.tar.bz2 yosys-cbf6b719fe85ce8544f9bb0796711f3f45638862.zip |
Make a few passes auto-call Mem::narrow instead of rejecting wide ports.
This essentially adds wide port support for free in passes that don't
have a usefully better way of handling wide ports than just breaking
them up to narrow ports, avoiding "please run memory_narrow" annoyance.
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/mem.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/kernel/mem.cc b/kernel/mem.cc index 021e1991e..848dc9f3a 100644 --- a/kernel/mem.cc +++ b/kernel/mem.cc @@ -691,6 +691,9 @@ Cell *Mem::extract_rdff(int idx, FfInitVals *initvals) { } void Mem::narrow() { + // NOTE: several passes depend on this function not modifying + // the design at all until (and unless) emit() is called. + // Be careful to preserve this. std::vector<MemRd> new_rd_ports; std::vector<MemWr> new_wr_ports; std::vector<std::pair<int, int>> new_rd_map; |