This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: GCC testsuite run before and after ~2.12.1 upgraded to pre-2.13
- From: "H. J. Lu" <hjl at lucon dot org>
- To: rittle at labs dot mot dot com
- Cc: binutils at sources dot redhat dot com, gcc-bugs at gcc dot gnu dot org
- Date: Thu, 25 Jul 2002 21:39:39 -0700
- Subject: Re: GCC testsuite run before and after ~2.12.1 upgraded to pre-2.13
- References: <200207260430.g6Q4UOSi002790@latour.rsch.comm.mot.com>
On Thu, Jul 25, 2002 at 11:30:24PM -0500, Loren James Rittle wrote:
> (Based upon the analysis below, I am CCing gcc-bugs RE PR 7171. The
> version numbers in the subject line refer to binutils. Quick
> summary: More C++ test cases fail with binutils pre-2.13 than failed
> with binutils ~2.12.1. This behavior has been spotted on a wide
> variety of platforms.)
>
> Thank you Jason R Thorpe, Alan Modra and Ian Lance Taylor for the
> discussion you held last week on this topic. Here is what I see when
> I build "element_access.exe" on i386-unknown-freebsd4.6 (a newly
> failing C++ libstdc++-v3 test case, upon binutils upgrade to pre-2.13
> with full rebootstrap of gcc) with -Map:
>
> [...]
> .rodata 0x08048e80 0x14d
> *(.rodata .rodata.* .gnu.linkonce.r.*)
> .rodata 0x08048e80 0x1 /usr/lib/crt1.o
> *fill* 0x08048e81 0x1f 00
> .rodata 0x08048ea0 0x10f /var/tmp//ccAEn9wX.o
> *fill* 0x08048faf 0x1 00
> .gnu.linkonce.r._ZTISt12out_of_range
> 0x08048fb0 0xc /var/tmp//ccAEn9wX.o
> 0x08048fb0 _ZTISt12out_of_range
> .gnu.linkonce.r._ZTSSt12out_of_range
> 0x08048fbc 0x11 /var/tmp//ccAEn9wX.o
> 0x08048fbc _ZTSSt12out_of_range
> [...]
>
> Tracing back, I see these entries in "element_access.o":
>
> [16] .gnu.linkonce.r._ PROGBITS 00000000 008f2c 00000c 00 WA 0 0 4
> [18] .gnu.linkonce.r._ PROGBITS 00000000 008f38 000011 00 A 0 0 1
>
> Based on size of element, it appears that _ZTISt12out_of_range (AKA
> ``typeinfo for std::out_of_range'') is of interest. Tracing back from
> here, I see this in the g++-produced asm:
>
> .section .gnu.linkonce.r._ZTISt12out_of_range,"aw",@progbits
>
FWIW, on Linux/x86, I got
.section .gnu.linkonce.d._ZTISt12out_of_range,"aw",@progbits
.section .gnu.linkonce.r._ZTSSt12out_of_range,"a",@progbits
.section .gnu.linkonce.d._ZTISt11logic_error,"aw",@progbits
.section .gnu.linkonce.r._ZTSSt11logic_error,"a",@progbits
.section .gnu.linkonce.d._ZTISt9exception,"aw",@progbits
.section .gnu.linkonce.r._ZTSSt9exception,"a",@progbits
You may want to check out why BSDs are different.
H.J.