https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94539
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Ever confirmed|0 |1
Last reconfirmed| |2020-04-09
Target Milestone|--- |10.0
CC| |hubicka at gcc dot gnu.org,
| |rguenth at gcc dot gnu.org
Keywords| |wrong-code
Status|UNCONFIRMED |NEW
Summary|gcc.dg/alias-14.c fails on |[10 Regression]
|gcc 10, succeeds on gcc 9, |gcc.dg/alias-14.c fails on
|when turned into an |gcc 10, succeeds on gcc 9,
|execution test |when turned into an
| |execution test
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
On x86_64 we're failing
/* Again we should make void * in the structure conflict with any pointer.
*/
asm ("":"=r"(ptr):"0"(&c));
c.a=NULL;
*ptr=(float*)(size_t)1;
if (!c.a)
__builtin_abort ();
and at that point FRE1 already has
<bb 10> :
__asm__("" : "=r" ptr_23 : "0" &b);
*ptr_23 = 1B;
__asm__("" : "=r" ptr_26 : "0" &c);
c.a = 0B;
*ptr_26 = 1B;
__builtin_abort ();
I'll have a more detailed look.