Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 6 Apr 2002 20:16:35 -0800 (PST)
From:      Peter Wemm <peter@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/libexec/rtld-elf/ia64 reloc.c
Message-ID:  <200204070416.g374GZO72175@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
peter       2002/04/06 20:16:35 PST

  Modified files:
    libexec/rtld-elf/ia64 reloc.c 
  Log:
  Fix a relocation bug in the ia64 ld.so.  Weak function pointers in shared
  objects were not being correctly set to zero.  Instead, the function
  descriptor pointer was set to the load address of the .so object.  This
  caused gcc generated binaries to segfault on exit when crtbegin.asm's
  _fini code tested the __cxa_finalize() function pointer for zero.
  
  This is a bit of a hack because of a problem nearby workaround for
  find_symdef and its quirks (failures) for local symbols.  This still
  needs to be fixed.
  
  Revision  Changes    Path
  1.3       +16 -3     src/libexec/rtld-elf/ia64/reloc.c

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200204070416.g374GZO72175>