https://open-source-silicon.dev logo
Title
m

Mitch Bailey

10/19/2021, 2:50 AM
@User I just tried my updated netgen in docker and it gets a segfault in the same place as 1.5.205. In the
FlattenUnmatched
function, around
3441	in netcmp.c
(gdb) p ob
$33 = (struct objlist *) 0x31796b732f30715f
(gdb) p *tc
$30 = {
  file = 1, 
  name = 0x19dc5860 "sky130_fd_io__gpiov2_odrvr", 
  number = 1, 
  dumped = 0, 
  flags = 130 '\202', 
  class = 0 '\000', 
  classhash = 15982189494909831418, 
  permutes = 0x0, 
  cell = 0x19dd1410, 
  objdict = {
    hashsize = 42073, 
    hashfirstindex = 0, 
    hashfirstptr = 0x0, 
    hashtab = 0x1a8f3d80
  }, 
  instdict = {
    hashsize = 42073, 
    hashfirstindex = 0, 
    hashfirstptr = 0x0, 
    hashtab = 0x1a946070
  }, 
  propdict = {
    hashsize = 42073, 
    hashfirstindex = 0, 
    hashfirstptr = 0x0, 
    hashtab = 0x1a998360
  }, 
  nodename_cache = 0x19ddf750, 
  nodename_cache_maxnodenum = 16, 
  embedding = 0x0, 
  next = 0x0
}
(gdb) p tcsub
$5 = (struct nlist *) 0x0
I checked the cell pointer list and it appears to end in a NULL, so I'm thinking
ob
must be getting overwritten somewhere.
(gdb) p *(tc->cell->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next->next)
$35 = {
  name = 0x19dd6720 "sky130_fd_io__com_padbondpad_q0/VGND_IO", 
  type = 2, 
  model = {
    class = 0x19dd66e0 "sky130_fd_io__com_pad", 
    port = 433940192
  }, 
  instance = {
    name = 0x19dd66a0 "sky130_fd_io__com_padbondpad_q0", 
    props = 0x19dd66a0
  }, 
  flags = 0 '\000', 
  node = 16, 
  next = 0x0
}