[Patch RFA libitm] config-based assessment of weakref capability
Jack Howarth
howarth@bromo.med.uc.edu
Fri Nov 18 17:05:00 GMT 2011
Iain,
For gcc trunk at r181476 with 181473-libitm-config-weakref.txt, 181473-libitm-tests-mapanon.txt
and 181473-libitm-user-label-prefix.txt as well as the regenerations performed in libitm, I see
the following failures on x86_64-apple-darwin11 under Xcode 4.2...
Running target unix/-m32
Using /sw/share/dejagnu/baseboards/unix.exp as board description file for target.
Using /sw/share/dejagnu/config/unix.exp as generic interface file for target.
Using /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/config/default.exp as tool-and-target-specific interface file.
Running /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/libitm.c/c.exp ...
FAIL: libitm.c/cancel.c (test for excess errors)
WARNING: libitm.c/cancel.c compilation failed to produce executable
FAIL: libitm.c/clone-1.c (test for excess errors)
WARNING: libitm.c/clone-1.c compilation failed to produce executable
FAIL: libitm.c/memcpy-1.c execution test
FAIL: libitm.c/memset-1.c execution test
FAIL: libitm.c/reentrant.c (test for excess errors)
WARNING: libitm.c/reentrant.c compilation failed to produce executable
Running /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/libitm.c++/c++.exp ...
FAIL: libitm.c++/eh-1.C (test for excess errors)
WARNING: libitm.c++/eh-1.C compilation failed to produce executable
WARNING: libitm.c++/static_ctor.C compilation failed to produce executable
=== libitm Summary for unix/-m32 ===
# of expected passes 14
# of unexpected failures 6
# of expected failures 4
Running target unix/-m64
Using /sw/share/dejagnu/baseboards/unix.exp as board description file for target.
Using /sw/share/dejagnu/config/unix.exp as generic interface file for target.
Using /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/config/default.exp as tool-and-target-specific interface file.
Running /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/libitm.c/c.exp ...
FAIL: libitm.c/cancel.c (test for excess errors)
WARNING: libitm.c/cancel.c compilation failed to produce executable
FAIL: libitm.c/clone-1.c (test for excess errors)
WARNING: libitm.c/clone-1.c compilation failed to produce executable
FAIL: libitm.c/reentrant.c (test for excess errors)
WARNING: libitm.c/reentrant.c compilation failed to produce executable
Running /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/libitm.c++/c++.exp ...
FAIL: libitm.c++/eh-1.C (test for excess errors)
WARNING: libitm.c++/eh-1.C compilation failed to produce executable
WARNING: libitm.c++/static_ctor.C compilation failed to produce executable
=== libitm Summary for unix/-m64 ===
# of expected passes 16
# of unexpected failures 4
# of expected failures 4
=== libitm Summary ===
# of expected passes 30
# of unexpected failures 10
# of expected failures 8
These appear as...
Executing on host: /sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/xgcc -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/ /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/libitm.c/cancel.c -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/ -I/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm -I/sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/.. -march=i486 -shared-libgcc -fmessage-length=0 -fgnu-tm -O2 -L/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/.libs -litm -lm -m32 -o ./cancel.exe (timeout = 300)
/var/tmp//cc4JYjZE.s:130:Expected comma after segment-name
/var/tmp//cc4JYjZE.s:130:Rest of line ignored. 1st junk character valued 32 ( ).
compiler exited with status 1
output is:
/var/tmp//cc4JYjZE.s:130:Expected comma after segment-name
/var/tmp//cc4JYjZE.s:130:Rest of line ignored. 1st junk character valued 32 ( ).
FAIL: libitm.c/cancel.c (test for excess errors)
Executing on host: /sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/xgcc -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/ /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/libitm.c/clone-1.c -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/ -I/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm -I/sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/.. -march=i486 -shared-libgcc -fmessage-length=0 -fgnu-tm -O2 -L/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/.libs -litm -lm -m32 -o ./clone-1.exe (timeout = 300)
/var/tmp//ccKvZq3x.s:80:Expected comma after segment-name
/var/tmp//ccKvZq3x.s:80:Rest of line ignored. 1st junk character valued 32 ( ).
compiler exited with status 1
output is:
/var/tmp//ccKvZq3x.s:80:Expected comma after segment-name
/var/tmp//ccKvZq3x.s:80:Rest of line ignored. 1st junk character valued 32 ( ).
FAIL: libitm.c/clone-1.c (test for excess errors)
Executing on host: /sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/xgcc -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/ /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/libitm.c/memcpy-1.c -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/ -I/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm -I/sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/.. -march=i486 -shared-libgcc -fmessage-length=0 -fgnu-tm -O2 -L/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/.libs -litm -lm -m32 -o ./memcpy-1.exe (timeout = 300)
PASS: libitm.c/memcpy-1.c (test for excess errors)
Setting LD_LIBRARY_PATH to .:/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/.libs:/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc:.:/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/.libs:/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc
libitm: pr_undoLogCode not supported
FAIL: libitm.c/memcpy-1.c execution test
Executing on host: /sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/xgcc -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/ /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/libitm.c/memset-1.c -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/ -I/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm -I/sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/.. -march=i486 -shared-libgcc -fmessage-length=0 -fgnu-tm -O2 -L/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/.libs -litm -lm -m32 -o ./memset-1.exe (timeout = 300)
PASS: libitm.c/memset-1.c (test for excess errors)
Setting LD_LIBRARY_PATH to .:/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/.libs:/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc:.:/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/.libs:/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc
libitm: pr_undoLogCode not supported
FAIL: libitm.c/memset-1.c execution test
Executing on host: /sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/xgcc -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/ /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/libitm.c/reentrant.c -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/ -I/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm -I/sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/.. -march=i486 -shared-libgcc -fmessage-length=0 -fgnu-tm -pthread -L/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/.libs -litm -lm -m32 -o ./reentrant.exe (timeout = 300)
/var/tmp//ccH5ebBa.s:167:Expected comma after segment-name
/var/tmp//ccH5ebBa.s:167:Rest of line ignored. 1st junk character valued 32 ( ).
compiler exited with status 1
output is:
/var/tmp//ccH5ebBa.s:167:Expected comma after segment-name
/var/tmp//ccH5ebBa.s:167:Rest of line ignored. 1st junk character valued 32 ( ).
FAIL: libitm.c/reentrant.c (test for excess errors)
Executing on host: /sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/xgcc -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/gcc/ /sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/libitm.c++/eh-1.C -B/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/ -I/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm -I/sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libitm/testsuite/.. -march=i486 -shared-libgcc -fmessage-length=0 -fgnu-tm -nostdinc++ -I/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libstdc++-v3/include/x86_64-apple-darwin11.2.0 -I/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libstdc++-v3/include -I/sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libstdc++-v3/libsupc++ -I/sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libstdc++-v3/include/backward -I/sw/src/fink.build/gcc47-4.7.0-1/gcc-4.7-20111118/libstdc++-v3/testsuite/util -L/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libitm/.libs -litm -L/sw/src/fink.build/gcc47-4.7.0-1/darwin_objdir/x86_64-apple-darwin11.2.0/i386/libgomp/../libstdc++-v3/src/.libs -lstdc++ -lm -m32 -o ./eh-1.exe (timeout = 300)
/var/tmp//cccQSVpj.s:222:Expected comma after segment-name
/var/tmp//cccQSVpj.s:222:Rest of line ignored. 1st junk character valued 32 ( ).
compiler exited with status 1
output is:
/var/tmp//cccQSVpj.s:222:Expected comma after segment-name
/var/tmp//cccQSVpj.s:222:Rest of line ignored. 1st junk character valued 32 ( ).
FAIL: libitm.c++/eh-1.C (test for excess errors)
Excess errors:
/var/tmp//cccQSVpj.s:222:Expected comma after segment-name
/var/tmp//cccQSVpj.s:222:Rest of line ignored. 1st junk character valued 32 ( ).
WARNING: libitm.c++/eh-1.C compilation failed to produce executable
I've attached the cancel.s obtained with --save-temps from the m32 libitm.c/cancel.c (test for excess errors)
failure.
Jack
-------------- next part --------------
.text
.align 4,0x90
.globl _cancel1
_cancel1:
LFB3:
subl $12, %esp
LCFI0:
movl $17, %eax
call __ITM_abortTransaction
LFE3:
.section __TEXT,__text_startup,regular,pure_instructions
.align 4
.globl _main
_main:
LFB4:
pushl %edi
LCFI1:
pushl %esi
LCFI2:
pushl %ebx
LCFI3:
call ___x86.get_pc_thunk.bx
L00000000001$pb:
movl L_b$non_lazy_ptr-L00000000001$pb(%ebx), %esi
movl $0, (%esi)
movl $33, %eax
call __ITM_beginTransaction
movl $1, %edx
movl L_a$non_lazy_ptr-L00000000001$pb(%ebx), %eax
call __ITM_WU4
movl $33, %eax
call __ITM_beginTransaction
testb $16, %al
jne L4
movl $1, %edx
movl %esi, %eax
call __ITM_WU4
movl $1, %eax
call __ITM_abortTransaction
.align 4
L4:
call __ITM_commitTransaction
movl L_a$non_lazy_ptr-L00000000001$pb(%ebx), %edi
cmpl $1, (%edi)
jne L6
movl (%esi), %ecx
testl %ecx, %ecx
jne L6
call __ITM_inTransaction
testl %eax, %eax
jne L6
movb $33, %al
call __ITM_beginTransaction
testb $16, %al
jne L12
movl $2, %edx
movl %edi, %eax
call __ITM_WU4
movl $33, %eax
call __ITM_beginTransaction
testb $16, %al
jne L11
movl $2, %edx
movl %esi, %eax
call __ITM_WU4
movl $17, %eax
call __ITM_abortTransaction
L11:
call __ITM_commitTransaction
L12:
cmpl $1, (%edi)
jne L6
movl (%esi), %edx
testl %edx, %edx
jne L6
call __ITM_inTransaction
testl %eax, %eax
jne L6
movb $33, %al
call __ITM_beginTransaction
testb $16, %al
jne L16
movl $2, %edx
movl L_a$non_lazy_ptr-L00000000001$pb(%ebx), %eax
call __ITM_WU4
movl $33, %eax
call __ITM_beginTransaction
testb $16, %al
jne L15
movl $2, %edx
movl L_b$non_lazy_ptr-L00000000001$pb(%ebx), %eax
call __ITM_WU4
movl $17, %eax
call __ITM_abortTransaction
L15:
call __ITM_commitTransaction
L16:
cmpl $1, (%edi)
jne L6
movl (%esi), %eax
testl %eax, %eax
jne L6
call __ITM_inTransaction
testl %eax, %eax
jne L6
popl %ebx
LCFI4:
popl %esi
LCFI5:
popl %edi
LCFI6:
ret
L6:
LCFI7:
call _abort
LFE4:
.text
.align 4,0x90
.globl __ZGTt7cancel1
__ZGTt7cancel1:
LFB5:
subl $12, %esp
LCFI8:
movl $17, %eax
call __ITM_abortTransaction
LFE5:
.comm _b,4,2
.comm _a,4,2
.comm _pp,100,5
.section .tm_clone_table
.align 2
.long _cancel1
.long __ZGTt7cancel1
.section __TEXT,__textcoal_nt,coalesced,pure_instructions
.weak_definition ___x86.get_pc_thunk.bx
.private_extern ___x86.get_pc_thunk.bx
___x86.get_pc_thunk.bx:
LFB6:
movl (%esp), %ebx
ret
LFE6:
.section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support
EH_frame1:
.set L$set$0,LECIE1-LSCIE1
.long L$set$0
LSCIE1:
.long 0
.byte 0x1
.ascii "zR\0"
.byte 0x1
.byte 0x7c
.byte 0x8
.byte 0x1
.byte 0x10
.byte 0xc
.byte 0x5
.byte 0x4
.byte 0x88
.byte 0x1
.align 2
LECIE1:
LSFDE1:
.set L$set$1,LEFDE1-LASFDE1
.long L$set$1
LASFDE1:
.long LASFDE1-EH_frame1
.long LFB3-.
.set L$set$2,LFE3-LFB3
.long L$set$2
.byte 0
.byte 0x4
.set L$set$3,LCFI0-LFB3
.long L$set$3
.byte 0xe
.byte 0x10
.align 2
LEFDE1:
LSFDE3:
.set L$set$4,LEFDE3-LASFDE3
.long L$set$4
LASFDE3:
.long LASFDE3-EH_frame1
.long LFB4-.
.set L$set$5,LFE4-LFB4
.long L$set$5
.byte 0
.byte 0x4
.set L$set$6,LCFI1-LFB4
.long L$set$6
.byte 0xe
.byte 0x8
.byte 0x4
.set L$set$7,LCFI2-LCFI1
.long L$set$7
.byte 0xe
.byte 0xc
.byte 0x4
.set L$set$8,LCFI3-LCFI2
.long L$set$8
.byte 0xe
.byte 0x10
.byte 0x87
.byte 0x2
.byte 0x86
.byte 0x3
.byte 0x83
.byte 0x4
.byte 0x4
.set L$set$9,LCFI4-LCFI3
.long L$set$9
.byte 0xa
.byte 0xc3
.byte 0xe
.byte 0xc
.byte 0x4
.set L$set$10,LCFI5-LCFI4
.long L$set$10
.byte 0xc6
.byte 0xe
.byte 0x8
.byte 0x4
.set L$set$11,LCFI6-LCFI5
.long L$set$11
.byte 0xc7
.byte 0xe
.byte 0x4
.byte 0x4
.set L$set$12,LCFI7-LCFI6
.long L$set$12
.byte 0xb
.align 2
LEFDE3:
LSFDE5:
.set L$set$13,LEFDE5-LASFDE5
.long L$set$13
LASFDE5:
.long LASFDE5-EH_frame1
.long LFB5-.
.set L$set$14,LFE5-LFB5
.long L$set$14
.byte 0
.byte 0x4
.set L$set$15,LCFI8-LFB5
.long L$set$15
.byte 0xe
.byte 0x10
.align 2
LEFDE5:
LSFDE7:
.set L$set$16,LEFDE7-LASFDE7
.long L$set$16
LASFDE7:
.long LASFDE7-EH_frame1
.long LFB6-.
.set L$set$17,LFE6-LFB6
.long L$set$17
.byte 0
.align 2
LEFDE7:
.section __IMPORT,__pointers,non_lazy_symbol_pointers
L_b$non_lazy_ptr:
.indirect_symbol _b
.long 0
L_a$non_lazy_ptr:
.indirect_symbol _a
.long 0
.subsections_via_symbols
More information about the Gcc-patches
mailing list