Modified LEF read to give all labels the sticky flag so that they

cannot be moved from the layer on which they are defined in the
LEF file.
This commit is contained in:
Tim Edwards 2020-05-21 13:47:14 -04:00
parent 4066c6821b
commit 6635817383
2 changed files with 6 additions and 3 deletions

View File

@ -1 +1 @@
8.3.11
8.3.12

View File

@ -1306,8 +1306,11 @@ LefReadPort(lefMacro, f, pinName, pinNum, pinDir, pinUse, oscale, lanno)
newlab = (lanno != NULL) ? lanno : lefMacro->cd_lastLabel;
if (strcmp(newlab->lab_text, pinName))
LefError(LEF_ERROR, "Internal error: Can't find the label!\n");
else /* Make this a port */
newlab->lab_flags = pinNum | pinUse | pinDir | PORT_DIR_MASK;
else
/* Make this a port, and make it a sticky label so that */
/* it is guaranteed to be on the layer on which it is defined */
newlab->lab_flags = pinNum | pinUse | pinDir | PORT_DIR_MASK |
LABEL_STICKY;
}
/* If lanno is non-NULL then the first rectangle in the LEF */
/* port list is used to modify it. All other LEF port geometry */