aboutsummaryrefslogtreecommitdiffstats
path: root/ice40
diff options
context:
space:
mode:
Diffstat (limited to 'ice40')
-rw-r--r--ice40/pack.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/ice40/pack.cc b/ice40/pack.cc
index 0db78992..921e73e0 100644
--- a/ice40/pack.cc
+++ b/ice40/pack.cc
@@ -203,6 +203,8 @@ static void pack_carries(Context *ctx)
CellInfo *carry_lc = nullptr;
if (carry_ci_lc && carry_lcs.find(carry_ci_lc->name) != carry_lcs.end()) {
carry_lc = carry_ci_lc;
+ } else if (ci_const && carry_lcs.size() == 1) {
+ carry_lc = ctx->cells.at(*(carry_lcs.begin())).get();
} else {
// No LC to pack into matching I0/I1, insert a new one
std::unique_ptr<CellInfo> created_lc =