https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68865
Segher Boessenkool <segher at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2015-12-11
Ever confirmed|0 |1
--- Comment #1 from Segher Boessenkool <segher at gcc dot gnu.org> ---
It used to ICE before this patch. It has for a long time.
This isn't the patch you are looking for.
I'll take a look though, sure. Simplified testcase:
===
static void __attribute__ ((noinline))
testit (void)
{
static volatile _Atomic unsigned int a = (unsigned int) (-70);
if ((a /= (-10)) != (unsigned int) ((unsigned int) (-70) / (-10)))
abort ();
}
int
main (void)
{
testit ();
exit (0);
}
===
(compile with -O2 -latomic).