gas 2.10.91 from 20000920 cvs is broken under hpux 10.20
John David Anglin
dave@hiauly1.hia.nrc.ca
Fri Sep 22 16:39:00 GMT 2000
In trying to resolve this bug which has been noted for a few days on the
gcc-bugs list,
./xgcc -B./ -B/usr/local/hppa1.1-hp-hpux10.20/bin/ -isystem /usr/local/hppa1.1-hp-hpux10.20/include -O2 -DIN_GCC -g -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wno-long-long -isystem ./include -fPIC -g1 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I../../gcc -I../../gcc/config -I../../gcc/../include -DUSE_COLLECT2 -DL_muldi3 -c ../../gcc/libgcc2.c -o libgcc/./_muldi3.o
../../gcc/libgcc2.c: In function `__muldi3':
../../gcc/libgcc2.c:199: Internal error: Segmentation fault.
Please submit a full bug report.
See <URL: http://www.gnu.org/software/gcc/bugs.html > for instructions.
I found that the segmentation fault on my machine occurs in emit-rtl.c.
The following code in reset_used_flags is incorrectly linked into cc1
and ultimately causes the fault:
ldo 4(%r19),%r19
addl %r19,%r21,%r20
ldw 0(%r20),%r26
.CALL ARGW0=GR
bl reset_used_flags,%r2
nop
.stabn 68,0,2010,L$M646-reset_used_flags
The disassembly of emit-rtl.o with objdump looks ok
200: 36 73 00 08 ldo 4(r19),r19
204: 0a b3 0a 14 add,l r19,r21,r20
208: 0e 80 10 9a ldw 0(sr0,r20),r26
20c: e8 5f 1b dd b,l 0 <reset_used_flags>,rp
210: 08 00 02 40 nop
but when the module is linked the `b,l' to reset_used_flags changes to
a `b,l' into the middle of copy_rtx_if_shared (the previous function)
0x1d84d0 <reset_used_flags+512>: ldo 4(r19),r19
0x1d84d4 <reset_used_flags+516>: add,l r19,r21,r20
0x1d84d8 <reset_used_flags+520>: ldw 0(sr0,r20),r26
0x1d84dc <reset_used_flags+524>:
b,l 0x1d80bc <copy_rtx_if_shared+700>,rp
0x1d84e0 <reset_used_flags+528>: nop
Since the linker hasn't changed, I would have to guess that there is a
relocation problem with respect to the above call. However, when I
include the relocation info in the assembly dump of emit-rtl.o, things
appear normal:
20c: e8 5f 1b dd b,l 0 <reset_used_flags>,rp
20c: R_PCREL_CALL reset_used_flags+0x40000000
Thus, I am not sure what's going on.
Dave
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)
More information about the Binutils
mailing list