aboutsummaryrefslogtreecommitdiffstats
path: root/gowin
diff options
context:
space:
mode:
authorYRabbit <rabbit@yrabbit.cyou>2021-10-22 23:27:36 +1000
committerYRabbit <rabbit@yrabbit.cyou>2021-10-22 23:27:36 +1000
commite9f3946d584ed98660e7a6289181645a9249f19f (patch)
tree9109b245081bb7c33bc96a4f5e121f4fefe1447b /gowin
parentf52fd6a272958b6371d280e90dc3dbeeebbee16c (diff)
downloadnextpnr-e9f3946d584ed98660e7a6289181645a9249f19f.tar.gz
nextpnr-e9f3946d584ed98660e7a6289181645a9249f19f.tar.bz2
nextpnr-e9f3946d584ed98660e7a6289181645a9249f19f.zip
gowin: Explicitly initialize the y in the cluster
Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
Diffstat (limited to 'gowin')
-rw-r--r--gowin/pack.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/gowin/pack.cc b/gowin/pack.cc
index 8fe7e0ee..2616a913 100644
--- a/gowin/pack.cc
+++ b/gowin/pack.cc
@@ -43,6 +43,7 @@ static void make_dummy_alu(Context *ctx, int alu_idx, CellInfo *ci, CellInfo *pa
dummy->cluster = packed_head->name;
dummy->constr_z = alu_idx % 6;
dummy->constr_x = alu_idx / 6;
+ dummy->constr_y = 0;
packed_head->constr_children.push_back(dummy.get());
new_cells.push_back(std::move(dummy));
}
@@ -140,6 +141,7 @@ static void pack_alus(Context *ctx)
packed->cluster = packed_head->name;
packed->constr_z = alu_idx % 6;
packed->constr_x = alu_idx / 6;
+ packed->constr_y = 0;
packed_head->constr_children.push_back(packed.get());
++alu_idx;
@@ -191,6 +193,7 @@ static void pack_alus(Context *ctx)
packed_tail->cluster = packed_head->name;
packed_tail->constr_z = alu_idx % 6;
packed_tail->constr_x = alu_idx / 6;
+ packed_tail->constr_y = 0;
++alu_idx;
packed_head->constr_children.push_back(packed_tail.get());
new_cells.push_back(std::move(packed_tail));
@@ -364,6 +367,7 @@ static void pack_mux2_lut(Context *ctx, CellInfo *ci, bool (*pred)(const BaseCtx
packed->cluster = packed->name;
mux0->cluster = packed->name;
mux0->constr_x = x[0];
+ mux0->constr_y = 0;
mux0->constr_z = z[0];
for (auto &child : mux0->constr_children) {
child->cluster = packed->name;
@@ -374,6 +378,7 @@ static void pack_mux2_lut(Context *ctx, CellInfo *ci, bool (*pred)(const BaseCtx
mux0->constr_children.clear();
mux1->cluster = packed->name;
mux1->constr_x = x[1];
+ mux0->constr_y = 0;
mux1->constr_z = z[1];
for (auto &child : mux1->constr_children) {
child->cluster = packed->name;