354,356c354,355
< Port *peer;
< if (ic->getPeer() == NULL || ic->getPeer()->isDefaultPort()) {
< peer = oldCPU->getPort("icache_port")->getPeer();
---
> if (!ic->isConnected()) {
> Port *peer = oldCPU->getPort("icache_port")->getPeer();
358,359c357
< } else {
< peer = ic->getPeer();
---
> peer->setPeer(ic);
361d358
< peer->setPeer(ic);
363,364c360,361
< if (dc->getPeer() == NULL || dc->getPeer()->isDefaultPort()) {
< peer = oldCPU->getPort("dcache_port")->getPeer();
---
> if (!dc->isConnected()) {
> Port *peer = oldCPU->getPort("dcache_port")->getPeer();
366,367c363
< } else {
< peer = dc->getPeer();
---
> peer->setPeer(dc);
369d364
< peer->setPeer(dc);