aboutsummaryrefslogtreecommitdiffstats
path: root/ecp5/pack.cc
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2018-08-02 13:02:07 +0200
committerClifford Wolf <clifford@clifford.at>2018-08-02 13:02:07 +0200
commitf9a9da6cdb6e864f04532fd1d1ab3e646319fc2d (patch)
treed0542fcdf558552f23b8baa49f4f981bf23d1883 /ecp5/pack.cc
parent2b3f363e8975e80bb56e6adaea5604ab8fce164c (diff)
parent81ee55c7eb2f153ba01a6ff8aba2bffc54daa9dc (diff)
downloadnextpnr-f9a9da6cdb6e864f04532fd1d1ab3e646319fc2d.tar.gz
nextpnr-f9a9da6cdb6e864f04532fd1d1ab3e646319fc2d.tar.bz2
nextpnr-f9a9da6cdb6e864f04532fd1d1ab3e646319fc2d.zip
Merge branch 'master' of github.com:YosysHQ/nextpnr into reroute
Diffstat (limited to 'ecp5/pack.cc')
-rw-r--r--ecp5/pack.cc11
1 files changed, 7 insertions, 4 deletions
diff --git a/ecp5/pack.cc b/ecp5/pack.cc
index 11cc2647..786f543e 100644
--- a/ecp5/pack.cc
+++ b/ecp5/pack.cc
@@ -325,19 +325,22 @@ class Ecp5Packer
lut_to_slice(ctx, lut0, slice.get(), 0);
lut_to_slice(ctx, lut1, slice.get(), 1);
- auto ff0 = lutffPairs.find(lut0->name), ff1 = lutffPairs.find(lut1->name);
+ auto ff0 = lutffPairs.find(lut0->name);
if (ff0 != lutffPairs.end()) {
ff_to_slice(ctx, ctx->cells.at(ff0->second).get(), slice.get(), 0, true);
packed_cells.insert(ff0->second);
- lutffPairs.erase(lut0->name);
fflutPairs.erase(ff0->second);
+ lutffPairs.erase(lut0->name);
}
+
+ auto ff1 = lutffPairs.find(lut1->name);
+
if (ff1 != lutffPairs.end()) {
ff_to_slice(ctx, ctx->cells.at(ff1->second).get(), slice.get(), 1, true);
packed_cells.insert(ff1->second);
- lutffPairs.erase(lut1->name);
fflutPairs.erase(ff1->second);
+ lutffPairs.erase(lut1->name);
}
new_cells.push_back(std::move(slice));
@@ -363,8 +366,8 @@ class Ecp5Packer
if (ff != lutffPairs.end()) {
ff_to_slice(ctx, ctx->cells.at(ff->second).get(), slice.get(), 0, true);
packed_cells.insert(ff->second);
- lutffPairs.erase(ci->name);
fflutPairs.erase(ff->second);
+ lutffPairs.erase(ci->name);
}
new_cells.push_back(std::move(slice));