Fixed #1214 (LEF VIA parsing issue)

This commit is contained in:
Matthias Koefferlein 2022-12-08 22:36:14 +01:00
parent 62e76e428b
commit a5a3fff1f0
4 changed files with 27042 additions and 7 deletions

View File

@ -545,19 +545,19 @@ via_size (double dbu, const Shape &shape)
void
LEFImporter::read_viadef_by_geometry (GeometryBasedLayoutGenerator *lg, ViaDesc &via_desc, const std::string &n, double dbu)
{
// ignore resistance spec
if (test ("RESISTANCE")) {
get_double ();
test (";");
}
std::string layer_name;
std::set<std::string> seen_layers;
std::vector<std::string> routing_layers;
while (true) {
if (test ("LAYER")) {
// ignore resistance spec
if (test ("RESISTANCE")) {
get_double ();
test (";");
} else if (test ("LAYER")) {
layer_name = get ();

View File

@ -942,3 +942,15 @@ TEST(204_concave_pins)
run_test (_this, "issue-1132", "read:test.lef", "au.oas.gz", lefdef_opt, false);
}
// issue 1214
TEST(205_lef_resistance)
{
db::LEFDEFReaderOptions lefdef_opt = default_options ();
lefdef_opt.set_lef_pins_datatype (12);
lefdef_opt.set_lef_pins_suffix (".LEFPIN");
lefdef_opt.set_lef_labels_datatype (11);
lefdef_opt.set_lef_labels_suffix (".LEFLABEL");
run_test (_this, "issue-1214", "read:merged.nom.lef", "au.oas.gz", lefdef_opt, false);
}

BIN
testdata/lefdef/issue-1214/au.oas.gz vendored Normal file

Binary file not shown.

27023
testdata/lefdef/issue-1214/merged.nom.lef vendored Normal file

File diff suppressed because it is too large Load Diff