On 22 Nov 2011, at 21:09, Aldy Hernandez wrote:


-fgnu-tm -m32 -o gcc-dg-lto-trans-mem-1-01.exe (timeout = 300)
Undefined symbols for architecture i386:^M
"__ITM_registerTMCloneTable", referenced from:^M
___doTMRegistrations in crttms.o^M
___doTMRegistrations in crttms.o^M
"__ITM_deregisterTMCloneTable", referenced from:^M
___doTMdeRegistrations in crttme.o^M
___doTMdeRegistrations in crttme.o^M
ld: symbol(s) not found for architecture i386^M
collect2: error: ld returned 1 exit status^M
compiler exited with status 1
output is:
Undefined symbols for architecture i386:^M
"__ITM_registerTMCloneTable", referenced from:^M
___doTMRegistrations in crttms.o^M
___doTMRegistrations in crttms.o^M "__ITM_deregisterTMCloneTable",
referenced from:^M
___doTMdeRegistrations in crttme.o^M
___doTMdeRegistrations in crttme.o^M
ld: symbol(s) not found for architecture i386^M
collect2: error: ld returned 1 exit status^M

FAIL: gcc.dg/lto/trans-mem-1
c_lto_trans-mem-1_0.o-c_lto_trans-mem-1_1.o link, -flto -fgnu-tm

I think we will need to ensure that libitm.dylib is on the link line -
- maybe we're not picking up the spec properly....

This is a missing dummy declaration for the test, since we're not linking with libitm. On Linux x86-64 there was no call to _ITM_registerTMCloneTable generated by the compiler.

It's a consequence of a combination of the way that "weak" works on Darwin, and the fact that I tried to make a "one size fits all" crt.


Can you try this?
<curr.txt>

we will need a dummy for _ITM_deregisterTMCloneTable as well.

(building at present .. will hopefully try before the end of today - GMT :-)

Iain

Reply via email to