http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55909



--- Comment #29 from philip.copeland at oracle dot com 2013-01-09 15:29:26 UTC 
---

Rebuilt fedoras 4.7.2-8 gcc without --enable-initfini-array reinstalled in a

chroot and rebuilt the test program



bash-4.2# g++ -v

Using built-in specs.

COLLECT_GCC=g++

COLLECT_LTO_WRAPPER=/usr/libexec/gcc/sparc64-redhat-linux/4.7.2/lto-wrapper

Target: sparc64-redhat-linux

Configured with: ../configure --prefix=/usr --mandir=/usr/share/man

--infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla

--enable-bootstrap --enable-shared --enable-threads=posix

--enable-checking=release --disable-build-with-cxx

--disable-build-poststage1-with-cxx --with-system-zlib --enable-__cxa_atexit

--disable-libunwind-exceptions --enable-gnu-unique-object

--enable-linker-build-id --with-linker-hash-style=gnu

--enable-languages=c,c++,objc,obj-c++,java,fortran,lto --enable-plugin

--enable-java-awt=gtk --disable-dssi

--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre

--enable-libgcj-multifile --with-ecj-jar=/usr/share/java/eclipse-ecj.jar

--disable-libjava-multilib --with-ppl --with-cloog --with-long-double-128

--with-cpu=ultrasparc --disable-multilib --build=sparc64-redhat-linux

Thread model: posix

gcc version 4.7.2 20121109 (Red Hat 4.7.2-8) (GCC) 



bash-4.2# ./a.out

we are able to write to stderr

Segmentation fault (core dumped)



Breakpoint 1, __cxxabiv1::__cxa_get_globals ()

    at ../../../../libstdc++-v3/libsupc++/eh_globals.cc:63

63      { return get_global(); }

(gdb) disassemble

Dump of assembler code for function __cxxabiv1::__cxa_get_globals():

   0xfffff80100180960 <+0>:     save  %sp, -176, %sp

   0xfffff80100180964 <+4>:     sethi  %hi(0), %o0

   0xfffff80100180968 <+8>:     sethi  %hi(0), %i0

   0xfffff8010018096c <+12>:    sethi  %hi(0x18f400), %l7

   0xfffff80100180970 <+16>:    call  0xfffff8010017db40

<__sparc_get_pc_thunk.l7>

   0xfffff80100180974 <+20>:    add  %l7, 0x290, %l7    ! 0x18f690

=> 0xfffff80100180978 <+24>:    add  %o0, 8, %o0

   0xfffff8010018097c <+28>:    xor  %i0, 0, %i0

   0xfffff80100180980 <+32>:    call  0xfffff8010030a558

   0xfffff80100180984 <+36>:    add  %l7, %o0, %o0

   0xfffff80100180988 <+40>:    add  %o0, %i0, %i0

   0xfffff8010018098c <+44>:    rett  %i7 + 8

   0xfffff80100180990 <+48>:    nop 

End of assembler dump.

(gdb) stepi

0xfffff8010018097c      63      { return get_global(); }

(gdb) 

0xfffff80100180980      63      { return get_global(); }

(gdb) 

0xfffff80100180984      63      { return get_global(); }

(gdb) 

0xfffff8010030a558 in __frame_dummy_init_array_entry ()

   from /lib64/libstdc++.so.6

(gdb) 



Program received signal SIGSEGV, Segmentation fault.

0xfffff8010030a558 in __frame_dummy_init_array_entry ()

   from /lib64/libstdc++.so.6



again, no thread level support address actions.

Moving on to rebuild of gcc-trunk (4.7.3?)

Reply via email to