http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53708
Bug #: 53708 Summary: [4.8 Regression] Many failures of the objc tests with -O3 -fnext-runtime and -m32 Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: domi...@lps.ens.fr CC: ia...@gcc.gnu.org, rgue...@gcc.gnu.org Host: *-apple-darwin* Target: *-apple-darwin* Build: *-apple-darwin* Between revisions 188187 (OK) and 188246 over one hundred tests failed with -m32 and -O3 -fnext-runtime on *-apple-darwin*: Running target unix/-m32 FAIL: objc/execute/exceptions/catchall-1.m compilation, -O3 -fomit-frame-pointer -fnext-runtime UNRESOLVED: objc/execute/exceptions/catchall-1.m execution, -O3 -fomit-frame-pointer -fnext-runtime FAIL: objc/execute/exceptions/catchall-1.m compilation, -O3 -g -fnext-runtime UNRESOLVED: objc/execute/exceptions/catchall-1.m execution, -O3 -g -fnext-runtime FAIL: objc/execute/exceptions/finally-1.m compilation, -O3 -fomit-frame-pointer -fnext-runtime UNRESOLVED: objc/execute/exceptions/finally-1.m execution, -O3 -fomit-frame-pointer -fnext-runtime FAIL: objc/execute/exceptions/finally-1.m compilation, -O3 -g -fnext-runtime ... FAIL: objc.dg/torture/tls/thr-init-3.m -O3 -fomit-frame-pointer -fnext-runtime (test for excess errors) WARNING: objc.dg/torture/tls/thr-init-3.m -O3 -fomit-frame-pointer -fnext-runtime compilation failed to produce executable FAIL: objc.dg/torture/tls/thr-init-3.m -O3 -g -fnext-runtime (test for excess errors) WARNING: objc.dg/torture/tls/thr-init-3.m -O3 -g -fnext-runtime compilation failed to produce executable === objc Summary for unix/-m32 === # of expected passes 5891 # of unexpected failures 104 # of expected failures 6 # of unresolved testcases 92 # of unsupported tests 85 On x86_64-apple-darwin10 I also see the following failures with -m64 Running target unix/-m64 FAIL: objc/execute/formal_protocol-4.m compilation, -O3 -fomit-frame-pointer -fnext-runtime UNRESOLVED: objc/execute/formal_protocol-4.m execution, -O3 -fomit-frame-pointer -fnext-runtime FAIL: objc/execute/formal_protocol-4.m compilation, -O3 -g -fnext-runtime UNRESOLVED: objc/execute/formal_protocol-4.m execution, -O3 -g -fnext-runtime FAIL: objc/execute/protocol-isEqual-2.m execution, -O3 -fomit-frame-pointer -fnext-runtime FAIL: objc/execute/protocol-isEqual-2.m execution, -O3 -g -fnext-runtime === objc Summary for unix/-m64 === # of expected passes 6045 # of unexpected failures 4 # of expected failures 14 # of unresolved testcases 2 # of unsupported tests 91 while on powerpc-apple-darwin9 I only see the execution failures. The compilation failures are all of the kind ld: in /var/tmp//ccVsf9ME.o, S_LITERAL_POINTERS section __OBJC,__message_refs missing relocs collect2: error: ld returned 1 exit status They disappear if I compile the tests with '-O3 -fno-tree-vectorize', but reappear with '-O2 -ftree-vectorize'. According to Iain Sandoe, this is due to revisions 188235/188243.