Target is to reduce the properties repository to a singleton.
Hence, there is no need to translate property IDs and it
is possible to retrieve properties everywhere.
The OASIS reader is refactored to avoid property renaming
and change of property definitions per ID.
Problem was that with forward-referenced text strings
in OASIS, StringRef objects were created (string placeholders).
Those where not properly migrated when transferring the foreign
layouts into DEF space, causing a memory corruption issue.
This solution is to provide a central, singleton string
repository. This needs to be MT safe (reference counting)
which should also fix potential problems when accessing
StringRef-based Text objects from multiple threads.
* [CONSIDER MERGING] Clarification and typo fixed in DRC doc.
* Implemented #1097 (discourage file compression, use CBLOCK)
* A warning is printed if file compression is enabled on OASIS
* A hint is present in the writer options
* CBLOCK is default (with fresh config) and for buddy tools
(use --cblock=false to disable it)
* Strict mode is default too.
* Updated tests
* Implementated patch as suggested by issue-1047
* Implementing blend-mode for LEF/DEF for a first solution for issue-1048
* Added testcase, fixed other tests
* Issue-1050 fixed - now REGION, BLOCKAGE and DIEAREA are relevant from mapping file, nothing else
* Bug fixes
* Experimental: DEF multipart paths
* Experimental: ignore LEF wire extension, ignore PATTERNNAME
* Implemented PATTERNNAME in DEF instead of LEF ..
* Implemented nondefaultrule vias
* LEF/DEF: non-defaultrule vias need a name suffix.
* Refined solution for NDR via names, updated test data
* Updated test data
* Multiple map files and 'REGIONS FENCE' + 'REGIONS GUIDE' layer mapping entries.
* Added test data, updated doc.
* Some enhancements and feedback
REGIONS in map files -> REGION
REGION NONE for map files (maps REGIONs which are neither GUIDE or FENCE)
Bugfix: VIA with ORIGIN
No via cell name prefix by default for buddy tools
* Simplified buddy tool options for LEF/DEF property names
Dropped --lefdef-dont-produce-instance-names,
--lefdef-dont-produce-pin-names and --lefdef-dont-produce-net-names
options. Instead, these options have to be enabled by giving
the respective property names.
Writing the property names takes some space and these
options are simply confusing and redundant.
* Issue a warning about missing cut geometry for a DEF via with PATTERNNAME (which is ignored)
* Fixed issue-1065