From 064195ecc9e87cc143c35ade2d2ae5e77366dd1b Mon Sep 17 00:00:00 2001 From: Tim Edwards Date: Sun, 11 Jul 2021 17:04:50 -0400 Subject: [PATCH] Reinstated some code that had been commented out that prints pin information for a non-matching pin in circuit1 and generates a proxy pin in circuit2---there is some case where this is redundant, I think, but I need to find the example. --- base/netcmp.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/base/netcmp.c b/base/netcmp.c index c04765b..e4f5d41 100644 --- a/base/netcmp.c +++ b/base/netcmp.c @@ -7560,7 +7560,8 @@ int MatchPins(struct nlist *tc1, struct nlist *tc2, int dolist) } if (ob1 == NULL || ob1->type != PORT || ob1->node >= 0 - || (ob1->node < 0 && tc1->class == CLASS_MODULE)) { + || (ob1->node < 0 && tc1->class == CLASS_MODULE) + || (ob1->node < 0 && ob1->model.port == -1)) { /* Add a proxy pin to tc2 */ obn = (struct objlist *)CALLOC(1, sizeof(struct objlist)); @@ -7577,8 +7578,7 @@ int MatchPins(struct nlist *tc1, struct nlist *tc2, int dolist) obn->instance.name = NULL; obn->node = -1; -#if 0 - /* Note: This pin has already been accounted for */ + /* Note: Has this pin already been accounted for? */ if (Debug == 0) { if (strcmp(ob1->name, "(no pins)")) { for (m = 0; m < left_col_end; m++) *(ostr + m) = ' '; @@ -7594,7 +7594,6 @@ int MatchPins(struct nlist *tc1, struct nlist *tc2, int dolist) Fprintf(stderr, "No netlist match for cell %s pin %s\n", tc1->name, ob1->name); } -#endif if (ob2 == tc2->cell) { obn->next = ob2;