diff --git a/src/mpl2/test/macro_only.defok b/src/mpl2/test/macro_only.defok index d1f0ee2305b..8083f8a540a 100644 --- a/src/mpl2/test/macro_only.defok +++ b/src/mpl2/test/macro_only.defok @@ -339,16 +339,16 @@ TRACKS Y 140 DO 282 STEP 3200 LAYER metal9 ; TRACKS X 190 DO 282 STEP 3200 LAYER metal10 ; TRACKS Y 140 DO 282 STEP 3200 LAYER metal10 ; COMPONENTS 10 ; - - U1 HM_100x400_4x4 + FIXED ( 665880 16610 ) S ; - - U10 HM_100x100_1x1 + FIXED ( 233880 16270 ) FN ; - - U2 HM_100x100_1x1 + FIXED ( 449880 664610 ) S ; + - U1 HM_100x400_4x4 + FIXED ( 665880 16310 ) FN ; + - U10 HM_100x100_1x1 + FIXED ( 233880 232430 ) FN ; + - U2 HM_100x100_1x1 + FIXED ( 449880 16270 ) FN ; - U3 HM_100x100_1x1 + FIXED ( 449880 448450 ) S ; - - U4 HM_100x100_1x1 + FIXED ( 449880 232430 ) FN ; - - U5 HM_100x100_1x1 + FIXED ( 449880 16270 ) FN ; - - U6 HM_100x400_4x4 + FIXED ( 17880 16610 ) S ; - - U7 HM_100x100_1x1 + FIXED ( 233880 664610 ) S ; + - U4 HM_100x100_1x1 + FIXED ( 449880 664610 ) S ; + - U5 HM_100x100_1x1 + FIXED ( 449880 232430 ) FN ; + - U6 HM_100x400_4x4 + FIXED ( 17880 16310 ) FN ; + - U7 HM_100x100_1x1 + FIXED ( 233880 16270 ) FN ; - U8 HM_100x100_1x1 + FIXED ( 233880 448450 ) S ; - - U9 HM_100x100_1x1 + FIXED ( 233880 232430 ) FN ; + - U9 HM_100x100_1x1 + FIXED ( 233880 664610 ) S ; END COMPONENTS NETS 12 ; - w1 ( U2 I1 ) ( U1 O1 ) + USE SIGNAL ; diff --git a/src/odb/src/defin/definReader.cpp b/src/odb/src/defin/definReader.cpp index 43ce7d39d36..8eb750cb094 100644 --- a/src/odb/src/defin/definReader.cpp +++ b/src/odb/src/defin/definReader.cpp @@ -2140,10 +2140,15 @@ bool definReader::createBlock(const char* file) dbModule* top_module = _block->getTopModule(); - if (top_module->getChildren().size() > 0) { + // sort the mod inst order so that in hierarchical + // mode we don't see distracting regression failures + // from order difference between dbVector and dbSet + // traversals for modinsts. + + if (top_module->getChildren().size() > 1) { top_module->getChildren().reverse(); } - if (top_module->getInsts().size() > 0) { + if (top_module->getInsts().size() > 1) { top_module->getInsts().reverse(); } return true;