annotate gcc/testsuite/gcc.target/arm/mve/intrinsics/mve_vstr_p.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-require-effective-target arm_v8_1m_mve_ok } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
2 /* { dg-add-options arm_v8_1m_mve } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
3 /* { dg-additional-options "-O2" } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
4
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
5 #include "arm_mve.h"
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
6 void
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
7 foo1 (int8_t *x, int32_t * i1)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
8 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
9 mve_pred16_t p;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
10 int32x4_t x_0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
11 int32_t * bias1 = i1;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
12 for (;; x++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
13 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
14 x_0 = vldrwq_s32(bias1);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
15 vstrbq_p_s32(x, x_0, p);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
16 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
17 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
18 void
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
19 foo2 (int8_t *x, int16_t * i1)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
20 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
21 mve_pred16_t p;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
22 int16x8_t x_0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
23 int16_t * bias1 = i1;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
24 for (;; x++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
25 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
26 x_0 = vldrhq_s16(bias1);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
27 vstrbq_p_s16(x, x_0, p);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
28 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
29 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
30
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
31 void
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
32 foo3 (int16_t *x, int32_t * i1)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
33 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
34 mve_pred16_t p;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
35 int32x4_t x_0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
36 int32_t * bias1 = i1;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
37 for (;; x++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
38 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
39 x_0 = vldrwq_s32(bias1);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
40 vstrhq_p_s32(x, x_0, p);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
41 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
42 }