freebsd-skq/contrib/gcc/config/i386
jdp b400b72e46 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.
1996-10-03 17:49:35 +00:00
..
386bsd.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
aix386.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
aix386ng.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
att.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
bsd386.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
bsd.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
config-nt.sed Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
freebsd-elf.h Add in hooks to produce assembler output suitable for binutils+elf 1996-09-18 06:50:39 +00:00
freebsd.h Activate the .weak code generation for libgcc.a and g++ now that it works. 1996-10-01 02:20:27 +00:00
freebsd.h.fixed Activate the .weak code generation for libgcc.a and g++ now that it works. 1996-10-01 02:20:27 +00:00
gas.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
gnu.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
go32.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
gstabs.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
i386-aout.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
i386-coff.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
i386.c Merge in freebsd-specific changes 1996-09-18 06:54:11 +00:00
i386.h Fix a bug that caused incorrect PIC code to be generated for exceptions. 1996-10-03 17:49:35 +00:00
i386.md Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
i386iscgas.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
isc.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
isccoff.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
iscdbx.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
linux-aout.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
linux-oldld.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
linux.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
lynx-ng.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
lynx.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
mach.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
netbsd.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
next.c Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
next.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
os2.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
osfelf.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
osfrose.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
perform.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sco4.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sco4dbx.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sco.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
scodbx.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
seq2-sysv3.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
seq-gas.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
seq-sysv3.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sequent.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sol2-c1.asm Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sol2-ci.asm Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sol2-cn.asm Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sol2.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sun386.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sun.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
svr3.ifile Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
svr3dbx.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
svr3gas.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
svr3z.ifile Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sysv3.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sysv4.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
sysv4gdb.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
t-crtpic Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
t-crtstuff Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
t-i386bare Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
t-iscscodbx Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
t-next Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
t-sol2 Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
t-svr3dbx Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
t-vsta Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
t-winnt Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
unix.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
v3gas.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
vsta.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
win-nt.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
winnt.c Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
x-aix Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
x-freebsd Merge in freebsd-specific changes 1996-09-18 06:54:11 +00:00
x-isc Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
x-isc3 Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
x-ncr3000 Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
x-next Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
x-osfrose Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
x-sco Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
x-sco4 Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
x-sysv3 Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
x-vsta Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-aix.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-bsd386.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-dos.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-freebsd.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-gnu.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-i386.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-isc.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-linux.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-lynx.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-netbsd.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-next.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-os2.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-osf.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-sco.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-sun.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-sysv3.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-sysv4.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-vsta.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00
xm-winnt.h Import of unmodified (but trimmed) gcc-2.7.2. The bigger parts of the 1996-09-18 05:35:50 +00:00