| /* PR middle-end/97073 */ | |
| /* { dg-additional-options "-mno-stv" { target i?86-*-* x86_64-*-* } } */ | |
| typedef unsigned long long L; | |
| union U { L i; struct T { unsigned k; L l; } j; } u; | |
| __attribute__((noinline,noclone)) void | |
| foo (L x) | |
| { | |
| u.j.l = u.i & x; | |
| } | |
| int | |
| main () | |
| { | |
| u.i = 5; | |
| foo (-1ULL); | |
| if (u.j.l != 5) | |
| __builtin_abort (); | |
| return 0; | |
| } |