https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107715
Jan Hubicka <hubicka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|TSVC s161 for double runs |TSVC s161 and s277 for |at zen4 30 times slower |double runs at zen4 30 |when vectorization is |times slower when |enabled |vectorization is enabled --- Comment #4 from Jan Hubicka <hubicka at gcc dot gnu.org> --- This looks to be same issue but also an regression wrt GCC 7.5.0 typedef double real_t; #define iterations 100000 #define LEN_1D 32000 #define LEN_2D 256 real_t a[LEN_1D],b[LEN_1D],c[LEN_1D],d[LEN_1D],e[LEN_1D]; real_t qq; int main(void) { for (int nl = 0; nl < iterations; nl++) { for (int i = 0; i < LEN_1D-1; i++) { if (a[i] >= (real_t)0.) { goto L20; } if (b[i] >= (real_t)0.) { goto L30; } a[i] += c[i] * d[i]; L30: b[i+1] = c[i] + d[i] * e[i]; L20: ; } } return 1; } jh@alberti:~/tsvc/bin> gcc -Ofast -march=native tt4.c ; time ./a.out real 0m0.879s user 0m0.879s sys 0m0.000s jh@alberti:~/tsvc/bin> /home/jh/trunk-install/bin/gcc -Ofast -march=native tt4.c ; time ./a.out real 0m1.742s user 0m1.741s sys 0m0.000s jh@alberti:~/tsvc/bin> clang -Ofast -march=native tt4.c ; time ./a.out real 0m0.879s user 0m0.879s sys 0m0.000s