From f9054190fd70a8083a835a0be7a235f72616a94f Mon Sep 17 00:00:00 2001
From: Alessandro Comodi <acomodi@antmicro.com>
Date: Tue, 15 Jun 2021 14:07:20 +0200
Subject: interchange: fix phys net writer

Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
---
 fpga_interchange/fpga_interchange.cpp | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/fpga_interchange/fpga_interchange.cpp b/fpga_interchange/fpga_interchange.cpp
index ac2a7e96..8d54335d 100644
--- a/fpga_interchange/fpga_interchange.cpp
+++ b/fpga_interchange/fpga_interchange.cpp
@@ -542,17 +542,14 @@ void FpgaInterchange::write_physical_netlist(const Context * ctx, const std::str
 
         const CellInfo *driver_cell = net.driver.cell;
 
-        if (driver_cell == nullptr)
-            continue;
-
         auto net_out = *net_iter++;
 
         // Handle GND and VCC nets.
-        if(driver_cell->bel == ctx->get_gnd_bel()) {
+        if(driver_cell != nullptr && driver_cell->bel == ctx->get_gnd_bel()) {
             IdString gnd_net_name(ctx->chip_info->constants->gnd_net_name);
             net_out.setName(strings.get_index(gnd_net_name.str(ctx)));
             net_out.setType(PhysicalNetlist::PhysNetlist::NetType::GND);
-        } else if(driver_cell->bel == ctx->get_vcc_bel()) {
+        } else if(driver_cell != nullptr && driver_cell->bel == ctx->get_vcc_bel()) {
             IdString vcc_net_name(ctx->chip_info->constants->vcc_net_name);
             net_out.setName(strings.get_index(vcc_net_name.str(ctx)));
             net_out.setType(PhysicalNetlist::PhysNetlist::NetType::VCC);
-- 
cgit v1.2.3