public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/35222]  New: [4.3 Regression] EH output contains procedure label without P' selector
@ 2008-02-16 22:46 danglin at gcc dot gnu dot org
  2008-02-16 23:37 ` [Bug target/35222] " danglin at gcc dot gnu dot org
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: danglin at gcc dot gnu dot org @ 2008-02-16 22:46 UTC (permalink / raw)
  To: gcc-bugs

The link command for libstdc++.sl.6.10 fails:

libtool: link: /xxx/gnu/gcc/objdir/./gcc/xgcc -shared-libgcc
-B/xxx/gnu/gcc/objdir/./gcc -nostdinc++
-L/xxx/gnu/gcc/objdir/hppa1.1-hp-hpux10.20/threads/libstdc++-v3/src
-L/xxx/gnu/gcc/objdir/hppa1.1-hp-hpux10.20/threads/libstdc++-v3/src/.libs
-B/opt/gnu/gcc/gcc-4.3.0/hppa1.1-hp-hpux10.20/bin/
-B/opt/gnu/gcc/gcc-4.3.0/hppa1.1-hp-hpux10.20/lib/ -isystem
/opt/gnu/gcc/gcc-4.3.0/hppa1.1-hp-hpux10.20/include -isystem
/opt/gnu/gcc/gcc-4.3.0/hppa1.1-hp-hpux10.20/sys-include  -threads -shared
-nostdlib -fPIC -Wl,+h -Wl,libstdc++.sl.6 -Wl,+b
-Wl,/opt/gnu/gcc/gcc-4.3.0/lib/threads -o .libs/libstdc++.sl.6.10  
.libs/bitmap_allocator.o .libs/pool_allocator.o .libs/mt_allocator.o
.libs/codecvt.o .libs/compatibility.o .libs/complex_io.o .libs/ctype.o
.libs/debug.o .libs/functexcept.o .libs/hash.o .libs/hash_c++0x.o
.libs/globals_io.o .libs/hashtable.o .libs/hashtable_c++0x.o .libs/ios.o
.libs/ios_failure.o .libs/ios_init.o .libs/ios_locale.o .libs/limits.o
.libs/list.o .libs/debug_list.o .libs/locale.o .libs/locale_init.o
.libs/locale_facets.o .libs/localename.o .libs/stdexcept.o .libs/strstream.o
.libs/system_error.o .libs/tree.o .libs/allocator-inst.o .libs/concept-inst.o
.libs/fstream-inst.o .libs/ext-inst.o .libs/ios-inst.o .libs/iostream-inst.o
.libs/istream-inst.o .libs/istream.o .libs/locale-inst.o .libs/misc-inst.o
.libs/ostream-inst.o .libs/sstream-inst.o .libs/streambuf-inst.o
.libs/streambuf.o .libs/string-inst.o .libs/valarray-inst.o
.libs/wlocale-inst.o .libs/wstring-inst.o .libs/atomicity.o
.libs/codecvt_members.o .libs/collate_members.o .libs/ctype_members.o
.libs/messages_members.o .libs/monetary_members.o .libs/numeric_members.o
.libs/time_members.o .libs/basic_file.o .libs/c++locale.o  
.libs/libstdc++.lax/libmath.a/stubs.o .libs/libstdc++.lax/libmath.a/signbit.o
.libs/libstdc++.lax/libmath.a/signbitf.o 
.libs/libstdc++.lax/libsupc++convenience.a/array_type_info.o
.libs/libstdc++.lax/libsupc++convenience.a/atexit_arm.o
.libs/libstdc++.lax/libsupc++convenience.a/bad_cast.o
.libs/libstdc++.lax/libsupc++convenience.a/bad_typeid.o
.libs/libstdc++.lax/libsupc++convenience.a/class_type_info.o
.libs/libstdc++.lax/libsupc++convenience.a/del_op.o
.libs/libstdc++.lax/libsupc++convenience.a/del_opnt.o
.libs/libstdc++.lax/libsupc++convenience.a/del_opv.o
.libs/libstdc++.lax/libsupc++convenience.a/del_opvnt.o
.libs/libstdc++.lax/libsupc++convenience.a/dyncast.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_alloc.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_arm.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_aux_runtime.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_call.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_catch.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_exception.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_globals.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_personality.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_term_handler.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_terminate.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_throw.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_type.o
.libs/libstdc++.lax/libsupc++convenience.a/eh_unex_handler.o
.libs/libstdc++.lax/libsupc++convenience.a/enum_type_info.o
.libs/libstdc++.lax/libsupc++convenience.a/function_type_info.o
.libs/libstdc++.lax/libsupc++convenience.a/fundamental_type_info.o
.libs/libstdc++.lax/libsupc++convenience.a/guard.o
.libs/libstdc++.lax/libsupc++convenience.a/new_handler.o
.libs/libstdc++.lax/libsupc++convenience.a/new_op.o
.libs/libstdc++.lax/libsupc++convenience.a/new_opnt.o
.libs/libstdc++.lax/libsupc++convenience.a/new_opv.o
.libs/libstdc++.lax/libsupc++convenience.a/new_opvnt.o
.libs/libstdc++.lax/libsupc++convenience.a/pbase_type_info.o
.libs/libstdc++.lax/libsupc++convenience.a/pmem_type_info.o
.libs/libstdc++.lax/libsupc++convenience.a/pointer_type_info.o
.libs/libstdc++.lax/libsupc++convenience.a/pure.o
.libs/libstdc++.lax/libsupc++convenience.a/si_class_type_info.o
.libs/libstdc++.lax/libsupc++convenience.a/tinfo.o
.libs/libstdc++.lax/libsupc++convenience.a/tinfo2.o
.libs/libstdc++.lax/libsupc++convenience.a/vec.o
.libs/libstdc++.lax/libsupc++convenience.a/vmi_class_type_info.o
.libs/libstdc++.lax/libsupc++convenience.a/vterminate.o
.libs/libstdc++.lax/libsupc++convenience.a/cp-demangle.o  
-L/xxx/gnu/gcc/objdir/hppa1.1-hp-hpux10.20/threads/libstdc++-v3/src
-L/xxx/gnu/gcc/objdir/hppa1.1-hp-hpux10.20/threads/libstdc++-v3/src/.libs -lm
-L/xxx/gnu/gcc/objdir/./gcc/threads -L/xxx/gnu/gcc/objdir/./gcc -L/usr/ccs/lib
-L/opt/langtools/lib -lgcc_s   -threads -threads  -threads  -threads  -threads 
-threads
/usr/ccs/bin/ld: Procedure labels require the P' selector - use the P' selector
on code symbol "$CODE$" in file .libs/pool_allocator.o
collect2: ld returned 1 exit status
make[8]: *** [libstdc++.la] Error 1

Looking at the assembler output for pool_allocator.cc, I see the following:

        .SPACE $PRIVATE$
        .SUBSPA $DATA$

        .align 4
        .EXPORT
_GLOBAL__F_.._.._.._.._.._gcc_libstdc___v3_src_pool_allocator.cc
_79739C6C_A6218F4D,DATA
_GLOBAL__F_.._.._.._.._.._gcc_libstdc___v3_src_pool_allocator.cc_79739C6C_A6218F
4D:
L$frame0001:
        .word   L$ECIE0001-L$SCIE0001
L$SCIE0001:
        .word   0x0
        .byte   0x1
        .STRING "zPL\x00"
        .uleb128 0x1
        .sleb128 4
        .byte   0x2
        .uleb128 0x8
        .byte   0x50
        .align 4
        .word   P%__gxx_personality_v0
        .byte   0x0
        .byte   0xc
        .uleb128 0x1e
        .uleb128 0x0
        .align 4
L$ECIE0001:
L$SFDE0005:
        .word   L$EFDE0005-L$ASFDE0005
L$ASFDE0005:
        .word   L$ASFDE0005-L$frame0001
        .word   L$FB0098
        .word   L$FE0098-L$FB0098
        .uleb128 0x4
           ...

L$FB0098 is a function label:

        .SPACE $TEXT$
        .NSUBSPA $CODE$
        .align 4
        .EXPORT
_ZN9__gnu_cxx17__pool_alloc_base16_M_get_free_listEj,ENTRY,PRIV_
LEV=3,ARGW0=GR,ARGW1=GR,RTNVAL=GR
L$FB0098:
_ZN9__gnu_cxx17__pool_alloc_base16_M_get_free_listEj:
        .PROC
        .CALLINFO FRAME=0,NO_CALLS
        .ENTRY
        ldo 7(%r25),%r28

This is the cause of the error.  I'm not sure why we are missing
the P' selector in 4.3, but this works in 4.2.


-- 
           Summary: [4.3 Regression] EH output contains procedure label
                    without P' selector
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: danglin at gcc dot gnu dot org
 GCC build triplet: hppa1.1-hp-hpux10.20
  GCC host triplet: hppa1.1-hp-hpux10.20
GCC target triplet: hppa1.1-hp-hpux10.20


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


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2008-03-12  0:58 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-02-16 22:46 [Bug target/35222] New: [4.3 Regression] EH output contains procedure label without P' selector danglin at gcc dot gnu dot org
2008-02-16 23:37 ` [Bug target/35222] " danglin at gcc dot gnu dot org
2008-02-17  1:02 ` pinskia at gcc dot gnu dot org
2008-02-17  3:29 ` dave at hiauly1 dot hia dot nrc dot ca
2008-02-17 15:59 ` rguenth at gcc dot gnu dot org
2008-02-17 16:45 ` dave at hiauly1 dot hia dot nrc dot ca
2008-03-03 16:22 ` [Bug target/35222] [4.3/4.4 " rguenth at gcc dot gnu dot org
2008-03-03 16:34 ` dave at hiauly1 dot hia dot nrc dot ca
2008-03-04 23:32 ` danglin at gcc dot gnu dot org
2008-03-04 23:40 ` danglin at gcc dot gnu dot org
2008-03-05  1:12 ` danglin at gcc dot gnu dot org
2008-03-12  0:58 ` danglin at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).