From 8297386a6c2575ddc7c128c4da1f0664a0f5c653 Mon Sep 17 00:00:00 2001 From: Tim Edwards Date: Mon, 15 Jun 2020 15:41:27 -0400 Subject: [PATCH] Corrected error in the new expansion of the cifoutput "bloat-all" rule to include CIF templayers; the connection mask was not correctly generated for the CIF templayer, leading to bad GDS output. --- cif/CIFgen.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/cif/CIFgen.c b/cif/CIFgen.c index 8edfbcac..3ef1974c 100644 --- a/cif/CIFgen.c +++ b/cif/CIFgen.c @@ -1101,10 +1101,19 @@ cifBloatAllFunc(tile, bls) * is not used). */ - TTMaskZero(&connect); - for (i = 0; i < TT_MAXTYPES; i++) - if (bloats->bl_distance[i] != 0) - TTMaskSetType(&connect, i); + if (bloats->bl_plane < 0) + { + /* bl_plane == -1 indicates bloating into a CIF templayer, and */ + /* so the only connecting type should be CIF_SOLIDTYPE. */ + TTMaskSetType(&connect, CIF_SOLIDTYPE); + } + else + { + TTMaskZero(&connect); + for (i = 0; i < TT_MAXTYPES; i++) + if (bloats->bl_distance[i] != 0) + TTMaskSetType(&connect, i); + } /* This search function is based on drcCheckArea */