[Bug rtl-optimization/63340] [5.0 regression] FAIL: gcc.dg/atomic/c11-atomic-exec-2.c -O2 execution test
schwab@linux-m68k.org
gcc-bugzilla@gcc.gnu.org
Tue Sep 23 11:13:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63340
--- Comment #3 from Andreas Schwab <schwab@linux-m68k.org> ---
Reduced:
extern void abort (void);
extern void exit (int);
#define TEST_COMPOUND(TYPE, LHSVAL, RHSVAL, OP) \
do \
{ \
static volatile _Atomic (TYPE) a = (TYPE) (LHSVAL); \
if ((a OP##= (RHSVAL)) != (TYPE) ((TYPE) (LHSVAL) OP (RHSVAL))) \
abort (); \
if (a != (TYPE) ((TYPE) (LHSVAL) OP (RHSVAL))) \
abort (); \
} \
while (0)
#define TEST_COMPOUND_ARITH(LHSVAL, RHSVAL, OP) \
do \
{ \
TEST_COMPOUND (float, (LHSVAL), (RHSVAL), OP); \
TEST_COMPOUND (double, (LHSVAL), (RHSVAL), OP); \
} \
while (0)
static void
test_mult (void)
{
TEST_COMPOUND_ARITH (1, 2, *);
}
int
main (void)
{
test_mult ();
exit (0);
}
More information about the Gcc-bugs
mailing list