This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: r159311, LTO fails with emutls on ObjC.


On Thu, May 13, 2010 at 10:55:35AM +0100, IainS wrote:
>
> On 13 May 2010, at 04:39, Jack Howarth wrote:
>> FYI, there are a few new failures introduced with r159311...
>
> one good reason for introducing the checks ;-)
>
> [ I should get the ObjC++ TLS stuff posted this week too... ]
>
>> FAIL: objc.dg/torture/trivial.m  -O2 -flto  (test for excess errors)
>> WARNING: objc.dg/torture/trivial.m  -O2 -flto  compilation failed to  
>> produce executable
>> FAIL: objc.dg/torture/trivial.m  -O2 -fwhopr  (test for excess errors)
>> WARNING: objc.dg/torture/trivial.m  -O2 -fwhopr  compilation failed to 
>> produce executable
>> FAIL: objc.dg/torture/tls/thr-init-3.m  -O2 -flto  (test for excess  
>> errors)
>> WARNING: objc.dg/torture/tls/thr-init-3.m  -O2 -flto  compilation  
>> failed to produce executable
>> FAIL: objc.dg/torture/tls/thr-init-3.m  -O2 -fwhopr  (test for excess 
>> errors)
>> WARNING: objc.dg/torture/tls/thr-init-3.m  -O2 -fwhopr  compilation  
>> failed to produce executable
>> FAIL: objc.dg/torture/tls/thr-init-3.m  -O2 -flto  (test for excess  
>> errors)
>> WARNING: objc.dg/torture/tls/thr-init-3.m  -O2 -flto  compilation  
>> failed to produce executable
>> FAIL: objc.dg/torture/tls/thr-init-3.m  -O2 -fwhopr  (test for excess 
>> errors)
>> WARNING: objc.dg/torture/tls/thr-init-3.m  -O2 -fwhopr  compilation  
>> failed to produce executable
>>
>> that are lto related. We should open a PR for those, which are of the 
>> form...
>
>> Executing on host: /sw/src/fink.build/gcc46-4.6.0-1000/darwin_objdir/ 
>> gcc/xgcc -B/sw/src/fink.build/gcc46-4.6.0-1000/darwin_objdir/gcc/ / 
>> sw/src/fink.build/gcc46-4.6.0-1000/gcc-4.6-20100512/gcc/testsuite/ 
>> objc.dg/torture/trivial.m   -O2 -flto  -fnext-runtime  -B/sw/src/ 
>> fink.build/gcc46-4.6.0-1000/darwin_objdir/x86
>> _64-apple-darwin10.3.0/./libobjc/.libs   -L/sw/src/fink.build/ 
>> gcc46-4.6.0-1000/darwin_objdir/x86_64-apple-darwin10.3.0/./ 
>> libobjc/.libs   /sw/src/fink.build/
>> gcc46-4.6.0-1000/gcc-4.6-20100512/gcc/testsuite/objc.dg/ 
>> torture/../../objc-obj-c++-shared/Object1.m  -lobjc -lm   -o ./ 
>> trivial.exe    (timeout = 300)
>> /var/tmp//ccigmvmn.s:unknown:Undefined local symbol  
>> L_OBJC_CLASS_Object.2245^M
>> /var/tmp//ccigmvmn.s:unknown:Undefined local symbol  
>> L_OBJC_METACLASS_Object.2244^M
>> lto-wrapper: /sw/src/fink.build/gcc46-4.6.0-1000/darwin_objdir/gcc/ 
>> xgcc returned 1 exit status^M
>> lto-wrapper: deleting LTRANS file /var/tmp//ccz9Or6L.lto.o: No such  
>> file or directory^M
>> collect2: lto-wrapper returned 1 exit status^M
>> compiler exited with status 1
>> output is:
>> /var/tmp//ccigmvmn.s:unknown:Undefined local symbol  
>> L_OBJC_CLASS_Object.2245^M
>> /var/tmp//ccigmvmn.s:unknown:Undefined local symbol  
>> L_OBJC_METACLASS_Object.2244^M
>> lto-wrapper: /sw/src/fink.build/gcc46-4.6.0-1000/darwin_objdir/gcc/ 
>> xgcc returned 1 exit status^M
>> lto-wrapper: deleting LTRANS file /var/tmp//ccz9Or6L.lto.o: No such  
>> file or directory^M
>> collect2: lto-wrapper returned 1 exit status^M
>> FAIL: objc.dg/torture/trivial.m  -O2 -flto  (test for excess errors)
>
> I think we perhaps need some LTO-specific coverage on ObjC and ObjC++   
> (I'll give it some thought after clearing the current backlog).
>

Iain,
   My understanding was that all of the other lto failures on
x86_64-apple-darwin10 were expected and it seemed to be immune to
the issue of missing symbols that are seen in the lto testsuite
on i386-apple-darwin* or powerpc-apple-darwin9. I found these
objc lto failures on x86_64-apple-darwin10 to be very interesting
since they suggested that perhaps the issue of symbols being
optimized away by lto also exists on x86_64-apple-darwin* after all.
              Jack

> Iain


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]