annotate gcc/testsuite/gcc.dg/pr94269.c @ 152:2b5abeee2509

update gcc11
author anatofuz
date Mon, 25 May 2020 07:50:57 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
152
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
1 /* { dg-do compile { target aarch64*-*-* } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
2 /* { dg-options "-O2 -ftree-loop-vectorize -funsafe-math-optimizations -march=armv8.2-a+sve -msve-vector-bits=256" } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
3
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
4 float
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
5 foo(long n, float *x, int inc_x,
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
6 float *y, int inc_y)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
7 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
8 float dot = 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
9 int ix = 0, iy = 0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
10
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
11 if (n < 0) {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
12 return dot;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
13 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
14
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
15 int i = 0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
16 while (i < n) {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
17 dot += y[iy] * x[ix];
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
18 ix += inc_x;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
19 iy += inc_y;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
20 i++;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
21 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
22
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
23 return dot;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
24 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
25
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
26 /* { dg-final { scan-assembler-not "smaddl" { target aarch64*-*-* } } } */