Fix invalid accesses during certain IO packing cases
This commit is contained in:
parent
582cd526ac
commit
655aee1f9d
@ -539,11 +539,13 @@ class MachXO2Packer
|
|||||||
if (ionet != nullptr) {
|
if (ionet != nullptr) {
|
||||||
ctx->nets.erase(ionet->name);
|
ctx->nets.erase(ionet->name);
|
||||||
tp.cell->ports.at(tp.port).net = nullptr;
|
tp.cell->ports.at(tp.port).net = nullptr;
|
||||||
|
ci->ports.at(ci->type == ctx->id("$nextpnr_obuf") ? id_I : id_O).net = nullptr;
|
||||||
}
|
}
|
||||||
if (ci->type == ctx->id("$nextpnr_iobuf")) {
|
if (ci->type == ctx->id("$nextpnr_iobuf")) {
|
||||||
NetInfo *net2 = ci->ports.at(id_I).net;
|
NetInfo *net2 = ci->ports.at(id_I).net;
|
||||||
if (net2 != nullptr) {
|
if (net2 != nullptr) {
|
||||||
ctx->nets.erase(net2->name);
|
ctx->nets.erase(net2->name);
|
||||||
|
ci->ports.at(id_I).net = nullptr;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user