Corrected an error in "extresist" that can output an incorrect
number of terminals for devices that don't have the usual gate/ source/drain terminals (e.g., diodes, resistors, capacitors) when writing the devices with re-mapped terminals into the .res.ext file. Also: Changed the size of the word containing the name refcount for "equiv" statements, since an accidental shorting of pins can cause a large number of "equiv" statements in a .ext file, causing an overrun of the previously 1-byte refcount (this probably does not make the structure any longer, since it likely has to fit to a word boundary).
This commit is contained in:
parent
fb091fa03f
commit
02bbb1064e
|
|
@ -763,6 +763,8 @@ efFlatGlob()
|
|||
HashSetValue(heGlob, (ClientData) nameGlob);
|
||||
nameGlob->efnn_node = nodeFlat;
|
||||
nameGlob->efnn_hier = (HierName *) heGlob->h_key.h_ptr;
|
||||
nameGlob->efnn_port = -1;
|
||||
nameGlob->efnn_refc = 0;
|
||||
}
|
||||
else if (nameGlob->efnn_node != nodeFlat)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -126,7 +126,7 @@ typedef struct efnn
|
|||
struct efnn *efnn_next; /* Next name for this node */
|
||||
HierName *efnn_hier; /* HierName for this node */
|
||||
int efnn_port; /* Port number for this node */
|
||||
unsigned char efnn_refc; /* #times referenced in hash */
|
||||
unsigned short efnn_refc; /* #times referenced in hash */
|
||||
} EFNodeName;
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -185,11 +185,13 @@ ResPrintExtDev(outextfile, devices)
|
|||
devices->layout->rd_width,
|
||||
devices->rs_sattr);
|
||||
|
||||
if (devices->drain != NULL)
|
||||
fprintf(outextfile, " \"%s\" %d %s",
|
||||
devices->drain->name,
|
||||
devices->layout->rd_width,
|
||||
devices->rs_dattr);
|
||||
/* Don't write drain values for 2-terminal devices */
|
||||
if (devptr->exts_deviceSDCount > 1)
|
||||
if (devices->drain != NULL)
|
||||
fprintf(outextfile, " \"%s\" %d %s",
|
||||
devices->drain->name,
|
||||
devices->layout->rd_width,
|
||||
devices->rs_dattr);
|
||||
|
||||
fprintf(outextfile, "\n");
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue