magic/extract
R. Timothy Edwards cc4da9a05f Corrected a subtle error in substrate extraction: In extHierSubstrate(),
extFindNodes() is called to find just the substrate node, then
ExtLabelRegions() is called to label the substrate node if such a label
exists.  The ExtLabelRegions() routine has a section at line 344 in which
if it finds a label on the substrate plane that is over space, then it
attaches the label to the default substrate region.  However, if the
label is inside an isolated substrate region, then it passes this check,
which never actually detects whether or not the label is over space.
Doing so is actually simple, since the preceding code detected connecting
tiles under the label, and that fact just needed to be carried forward
and checked.  The upshot of the error was that if an isolated substrate
region like a pwell inside deep nwell was *labeled*, then it would
mysteriously get shorted to the global substrate, which is clearly wrong.
Thanks to Mark Martin for providing the failing example (and apologies to
Mark Martin for spending time trying to debug a very obscure problem).
2026-07-11 17:09:26 -04:00
..
ExtArray.c Additional work to incorporate handling of split tiles throughout 2026-01-09 12:05:03 -05:00
ExtBasic.c Claude Fable 5 implemented capacitance checking at shape corners, 2026-07-08 09:13:07 -04:00
ExtCell.c Some further refinements to the last commit, and other additions: 2026-05-29 17:16:37 -04:00
ExtCouple.c Claude Fable 5 implemented capacitance checking at shape corners, 2026-07-08 09:13:07 -04:00
ExtHard.c codebase-wide: use flexible arrays where appropriate 2026-07-01 12:37:44 -04:00
ExtHier.c Made a correction to the last commit, which is that when searching 2026-06-22 20:03:30 -04:00
ExtInter.c Significant overhaul of the extresist code. The purpose of this 2026-05-28 13:12:13 -04:00
ExtLength.c codebase-wide: use flexible arrays where appropriate 2026-07-01 12:37:44 -04:00
ExtMain.c Claude Fable 5 implemented capacitance checking at shape corners, 2026-07-08 09:13:07 -04:00
ExtNghbors.c extract/ExtNghbors.c: fix older compiler support for label 2026-03-26 09:20:07 -04:00
ExtPerim.c Last set of changes to get non-Manhattan area and perimeter 2026-01-19 17:18:10 -05:00
ExtRegion.c Corrected a subtle error in substrate extraction: In extHierSubstrate(), 2026-07-11 17:09:26 -04:00
ExtSubtree.c codebase-wide: use flexible arrays where appropriate 2026-07-01 12:37:44 -04:00
ExtTech.c Made a correction to the last commit, which is that when searching 2026-06-22 20:03:30 -04:00
ExtTest.c First cut of pulling the TT_SIDE bit out of the tile database 2026-01-09 12:05:03 -05:00
ExtTimes.c Annotate ClientData callbacks: /*ARGSUSED*/ + /* UNUSED */ markers 2026-05-11 14:20:47 -04:00
ExtUnique.c Some further refinements to the last commit, and other additions: 2026-05-29 17:16:37 -04:00
ExtYank.c codebase-wide: use flexible arrays where appropriate 2026-07-01 12:37:44 -04:00
Makefile Makefile: whitespace only change 2025-07-29 10:50:32 -04:00
extDebugInt.h header file #ifndef guard presence consistency 2025-07-29 10:50:32 -04:00
extract.h Claude Fable 5 implemented capacitance checking at shape corners, 2026-07-08 09:13:07 -04:00
extractInt.h Modified behavior with regard to substrate shield types being inside 2026-06-13 16:08:05 -04:00