Viewing file: pr90555.c (1.09 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */ /* { dg-options "-fopenmp-simd -O2 -mavx512f -fdump-ipa-icf-optimized" } */
#define N 1024 int a[N];
void test_simdlen1 (void) { int i; #pragma omp simd simdlen (4) for (i = 0; i < N; ++i) a[i] = a[i] + 1; }
void test_simdlen2 (void) { int i; #pragma omp simd simdlen (8) for (i = 0; i < N; ++i) a[i] = a[i] + 1; }
void test_safelen1 (void) { int i; #pragma omp simd safelen (4) for (i = 0; i < N; ++i) a[i] = a[i] + 1; }
void test_safelen2 (void) { int i; #pragma omp simd safelen (8) for (i = 0; i < N; ++i) a[i] = a[i] + 1; }
int d[1024];
int test_simduid1 (int j, int b) { int l, c = 0; #pragma omp simd reduction(+: c) for (l = 0; l < b; ++l) c += d[j + l]; return c; }
int test_simduid2 (int j, int b) { int l, c2 = 0; #pragma omp simd reduction(+: c2) for (l = 0; l < b; ++l) c2 += d[j + l]; return c2; }
/* { dg-final { scan-ipa-dump "Semantic equality hit:test_simduid1/\[0-9+\]+->test_simduid2/\[0-9+\]+" "icf" } } */ /* { dg-final { scan-ipa-dump "Equal symbols: 1" "icf" } } */
|