From 5007f3f6026851a16aed9b0d0a30f3d19a548931 Mon Sep 17 00:00:00 2001 From: Tim Edwards Date: Wed, 13 Nov 2019 15:10:01 -0500 Subject: [PATCH] Modified "lef write" so that if a cell has a bounding box declared by FIXED_BBOX derived from GDS and the new "boundary" cif input rule, then the bbox property values take precedence over the extent-of-geometry bounding box. --- lef/lefWrite.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lef/lefWrite.c b/lef/lefWrite.c index da03bacf..3adfc12a 100644 --- a/lef/lefWrite.c +++ b/lef/lefWrite.c @@ -778,6 +778,20 @@ lefWriteMacro(def, f, scale, hide) else boundary = def->cd_bbox; + /* If a bounding box has been declared with the FIXED_BBOX property */ + /* then it takes precedence over def->cd_bbox. */ + + if (def->cd_flags & CDFIXEDBBOX) + { + char *propvalue; + bool found; + + propvalue = (char *)DBPropGet(def, "FIXED_BBOX", &found); + if (found) + sscanf(propvalue, "%d %d %d %d", &boundary.r_xbot, + &boundary.r_ybot, &boundary.r_xtop, &boundary.r_ytop); + } + /* Write position and size information */ fprintf(f, " ORIGIN %.4f %.4f ;\n",