[Bug tree-optimization/94488] [AArch64] ICE from OpenMP SIMD right shift of uint64_t
pinskia at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat Apr 4 18:18:52 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94488
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Ever confirmed|0 |1
Component|rtl-optimization |tree-optimization
Keywords| |ice-on-valid-code
Last reconfirmed| |2020-04-04
Status|UNCONFIRMED |NEW
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Self contained source:
#define a(b) __attribute__((__vector_size__(b)))
#define c(aa, ab, d) memcpy(aa, ab, d)
typedef __SIZE_TYPE__ size_t;
#define memcpy __builtin_memcpy
typedef unsigned long long uint64_t;
typedef struct {
uint64_t e a(16);
} f;
f ae, af;
int g;
int l() {
f aj, ak = af, al = ae;
int k = al.e[0];
_Pragma("omp simd") for (size_t i = 0; i < sizeof(aj) / sizeof(aj.e[0]); i++)
aj.e[i] = ak.e[i] >> k;
f j = aj;
c(&g, &j, g);
return g;
}
More information about the Gcc-bugs
mailing list