@@ -964,6 +964,7 @@ frNet* io::Parser::addNet(odb::dbNet* db_net)
964964{
965965 bool is_special = db_net->isSpecial ();
966966 bool has_jumpers = db_net->hasJumpers ();
967+ bool is_abuted = db_net->isConnectedByAbutment ();
967968 if (!is_special && db_net->getSigType ().isSupply ()) {
968969 logger_->error (DRT ,
969970 305 ,
@@ -972,31 +973,30 @@ frNet* io::Parser::addNet(odb::dbNet* db_net)
972973 db_net->getName (),
973974 db_net->getSigType ().getString ());
974975 }
975- std::unique_ptr<frNet> uNetIn
976+ std::unique_ptr<frNet> net_in
976977 = std::make_unique<frNet>(db_net->getName (), router_cfg_);
977- auto netIn = uNetIn.get ();
978978 if (db_net->getNonDefaultRule ()) {
979- uNetIn ->updateNondefaultRule (
979+ net_in ->updateNondefaultRule (
980980 getTech ()->getNondefaultRule (db_net->getNonDefaultRule ()->getName ()));
981981 }
982982 if (db_net->getSigType () == dbSigType::CLOCK ) {
983- uNetIn ->updateIsClock (true );
983+ net_in ->updateIsClock (true );
984984 }
985985 if (is_special) {
986- uNetIn ->setIsSpecial (true );
986+ net_in ->setIsSpecial (true );
987987 }
988- if (has_jumpers) {
989- uNetIn-> setHasJumpers (has_jumpers );
990- }
991- updateNetRouting (netIn, db_net);
992- netIn-> setType (db_net-> getSigType () );
988+ net_in-> setHasJumpers (has_jumpers);
989+ net_in-> setIsConnectedByAbutment (is_abuted );
990+ updateNetRouting (net_in. get (), db_net);
991+ net_in-> setType ( db_net-> getSigType () );
992+ frNet* raw_net_in = net_in. get ( );
993993 if (is_special) {
994- getBlock ()->addSNet (std::move (uNetIn ));
994+ getBlock ()->addSNet (std::move (net_in ));
995995 } else {
996- getBlock ()->addNet (std::move (uNetIn ));
996+ getBlock ()->addNet (std::move (net_in ));
997997 }
998998
999- return netIn ;
999+ return raw_net_in ;
10001000}
10011001
10021002void updatefrAccessPoint (odb::dbAccessPoint* db_ap,
0 commit comments