streamline constant_net detection

This commit is contained in:
rowanG077 2023-02-06 17:04:30 +01:00
parent d2bf44ba45
commit 9e8f8b7b45
2 changed files with 8 additions and 4 deletions

View File

@ -38,10 +38,12 @@ static bool is_nextpnr_iob(Context *ctx, CellInfo *cell)
static bool net_is_constant(const Context *ctx, NetInfo *net, bool &value)
{
auto gnd = ctx->id("$PACKER_GND_NET");
auto vcc = ctx->id("$PACKER_VCC_NET");
if (net == nullptr)
return false;
if (net->name == ctx->id("$PACKER_GND_NET") || net->name == ctx->id("$PACKER_VCC_NET")) {
value = (net->name == ctx->id("$PACKER_VCC_NET"));
if (net->name.in(gnd, vcc)) {
value = (net->name == vcc);
return true;
} else {
return false;

View File

@ -132,10 +132,12 @@ static void pack_nonlut_ffs(Context *ctx)
static bool net_is_constant(const Context *ctx, NetInfo *net, bool &value)
{
auto gnd = ctx->id("$PACKER_GND_NET");
auto vcc = ctx->id("$PACKER_VCC_NET");
if (net == nullptr)
return false;
if (net->name == ctx->id("$PACKER_GND_NET") || net->name == ctx->id("$PACKER_VCC_NET")) {
value = (net->name == ctx->id("$PACKER_VCC_NET"));
if (net->name.in(gnd, vcc)) {
value = (net->name == vcc);
return true;
} else {
return false;