summaryrefslogtreecommitdiffstats
path: root/contrib/libg++/libstdc++/std/cstdlib.h
diff options
context:
space:
mode:
authorjdp <jdp@FreeBSD.org>1996-10-03 17:49:35 +0000
committerjdp <jdp@FreeBSD.org>1996-10-03 17:49:35 +0000
commitb400b72e469a93b88555a568b89989a3fe8f3918 (patch)
tree37756f861451aa0a35128d1865b1e2285b2876c4 /contrib/libg++/libstdc++/std/cstdlib.h
parent5a3d59963e84a76fc6922009cb9032a42d5d0e88 (diff)
downloadFreeBSD-src-b400b72e469a93b88555a568b89989a3fe8f3918.zip
FreeBSD-src-b400b72e469a93b88555a568b89989a3fe8f3918.tar.gz
Fix a bug that caused incorrect PIC code to be generated for exceptions.
The symptom was an assembler warning "GOT relocation burb: `___EXCEPTION_TABLE__' should be global" followed (sometimes) by a core dump. The fix makes the compiler generate the correct GOTOFF addressing for that symbol, rather than the GOT addressing it was emitting before. Warning: There is still at least one serious bug in the i386 exception code for PIC. The exception code that is generated clobbers the GOT register (%ebx) and then tries to use it later. That leads to core dumps at program execution time. I know where the problem is, but I do not have a fix for it at this time. Until it is fixed, exceptions will not work in PIC code. This is a general problem for all i386 platforms; it is not specific to FreeBSD.
Diffstat (limited to 'contrib/libg++/libstdc++/std/cstdlib.h')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud