PATCH: Re: 971225: bootstrap fails on powerpc-unknown-linux-gnu*
Franz Sirl
Franz.Sirl-kernel@lauterbach.com
Thu Jan 29 14:41:00 GMT 1998
Hi,
the reported bootstrap fail on Linux/PPC was introduced in rev. 1.3 of
rs6000/sysv4.h by a #undef JUMP_TABLES_IN_TEXT_SECTION. linux.h includes
sysv4.h but didn't override the change.
Eventually this hides a bug in binutils?
Bye,
Franz.
Tue Jan 29 22:44:00 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
* rs6000/linux.h: define JUMP_TABLES_IN_TEXT_SECTION
--- linux.h-org Tue Jan 27 23:46:50 1998
+++ linux.h Thu Jan 29 15:35:21 1998
@@ -65,3 +65,6 @@
#undef DEFAULT_VTABLE_THUNKS
#define DEFAULT_VTABLE_THUNKS 1
+
+#undef JUMP_TABLES_IN_TEXT_SECTION
+#define JUMP_TABLES_IN_TEXT_SECTION
At 18:30 Uhr -0000 03.01.1998, Franz Sirl wrote:
>Hi,
>
>bootstrapping 971225 on powerpc-unknown-linux-gnu and
>powerpc-unknown-linux-gnulibc1 with binutils-2.8.1.0.18 results in the
>following assembler faults:
>
>make[2]: [objc.stage1] Error 1 (ignored)
>make[2]: Leaving directory `/sda9/src/e/egcs-971207/b-971225-2/gcc'
>make CC="stage1/xgcc -Bstage1/" CFLAGS="-O2 -g -O2" LDFLAGS=""
>libdir=/usr/lib STAGE_PREFIX=stage1/ LANGUAGES="c c++ objc"
>make[2]: Entering directory `/sda9/src/e/egcs-971207/b-971225-2/gcc'
>stage1/xgcc -Bstage1/ -DIN_GCC -O2 -g -O2 -DHAVE_CONFIG_H -I.
>-I../../gcc -I../../gcc/config \
>
>-DGCC_INCLUDE_DIR=\"/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/egcs-2.91.03/inc
>l
>ude\" \
> -DGPLUSPLUS_INCLUDE_DIR=\"/usr/include/g++\" \
> -DOLD_GPLUSPLUS_INCLUDE_DIR=\"/usr/lib/g++-include\" \
> -DLOCAL_INCLUDE_DIR=\"/usr/local/include\" \
>
>-DCROSS_INCLUDE_DIR=\"/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/egcs-2.91.03/s
>y
>s-include\" \
> -DTOOL_INCLUDE_DIR=\"/usr/powerpc-unknown-linux-gnu/include\" \
> -c `echo ../../gcc/cccp.c | sed 's,^\./,,'`
>/tmp/cca11119.s: Assembler messages:
>/tmp/cca11119.s:17477: Error: Can't emit reloc {- .rodata-seg symbol
>".L3580"} @ file address 31162.
>/tmp/cca11119.s:17478: Error: Can't emit reloc {- .rodata-seg symbol
>".L3580"} @ file address 31166.
>make[2]: *** [cccp.o] Error 1
>make[2]: Leaving directory `/sda9/src/e/egcs-971207/b-971225-2/gcc'
>make[1]: *** [bootstrap] Error 2
>make[1]: Leaving directory `/sda9/src/e/egcs-971207/b-971225-2/gcc'
>make: *** [bootstrap] Error 2
>
>The corresponding section of the .s file says:
>
>.LM2350:
> bc 12,2,.L3563
> mr 20,11
> addis 11,0,.L3573-.L3580@ha
> addi 11,11,.L3573-.L3580@l
> addis 9,0,.L3580@ha
> addi 9,9,.L3580@l
> add 19,9,11
> li 25,0
> li 22,10
> li 23,0
> addis 24,0,.LC85+2@ha
> addi 27,24,.LC85+2@l
> addis 21,0,stdout@ha
>
>You can find the full cccp.[is] files at
>< http://homepages.munich.netsurf.de/Franz.Sirl/misc >.
>
>Bye,
>Franz.
More information about the Gcc
mailing list