Since a few days, a couple of __sync_fetch_and_* testcases fail on Solaris 2/SPARC (Solaris 8 to 10), both 32 and 64-bit, Sun as and gas:
+FAIL: gcc.c-torture/compile/sync-3.c -O2 (test for excess errors) +FAIL: gcc.c-torture/compile/sync-3.c -O3 -fomit-frame-pointer (test for exces s errors) +FAIL: gcc.c-torture/compile/sync-3.c -O3 -g (test for excess errors) +FAIL: gcc.c-torture/compile/sync-3.c -O2 -flto (test for excess errors) +FAIL: gcc.c-torture/compile/sync-3.c -O2 -fwhopr (test for excess errors) libgomp is equally affected. The offending code looks like this: FAIL: gcc.c-torture/compile/sync-3.c -O2 (test for excess errors) Excess errors: /usr/ccs/bin/as: "/var/tmp//ccwUTreE.s", line 158: error: statement syntax cas [%fp-28], %g1, %g3 -- Summary: [4.6 regression] Several SPARC testcases fail Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: assemble-failure Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ro at gcc dot gnu dot org GCC build triplet: sparc-sun-solaris2* GCC host triplet: sparc-sun-solaris2* GCC target triplet: sparc-sun-solaris2* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44494