annotate gcc/testsuite/gcc.target/powerpc/vec-strir_p-10.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 } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
2 /* { dg-options "-mdejagnu-cpu=future" } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
3
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
4 #include <altivec.h>
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
5
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
6 extern void abort (void);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
7
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
8 int main (int argc, short *argv [])
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
9 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
10 vector unsigned short input1 =
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
11 { 0x1, 0x3, 0x5, 0x7, 0x9, 0xb, 0xd, 0xf };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
12 vector unsigned short expected1 =
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
13 { 0x1, 0x3, 0x5, 0x7, 0x9, 0xb, 0xd, 0xf };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
14 vector unsigned short input2 =
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
15 { 0x1, 0x0, 0x5, 0x7, 0x9, 0xb, 0xd, 0xf };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
16 vector unsigned short expected2 =
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
17 { 0x0, 0x0, 0x5, 0x7, 0x9, 0xb, 0xd, 0xf };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
18 vector unsigned short input3 =
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
19 { 0x1, 0x0, 0x5, 0x7, 0x9, 0xb, 0xd, 0x0 };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
20 vector unsigned short expected3 =
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
21 { 0x0, 0x0, 0x5, 0x7, 0x9, 0xb, 0xd, 0x0 };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
22 vector unsigned short input4 =
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
23 { 0x1, 0x3, 0x5, 0x7, 0x9, 0xb, 0xd, 0x0 };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
24 vector unsigned short expected4 =
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
25 { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
26
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
27 if (vec_strir_p (input1))
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
28 abort ();
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
29 if (!vec_strir_p (input2))
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
30 abort ();
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
31 if (!vec_strir_p (input3))
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
32 abort ();
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
33 if (!vec_strir_p (input4))
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
34 abort ();
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
35
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
36 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
37
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
38 /* Enforce that exactly four dot-form instructions which are properly biased
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
39 for the target's endianness implement this built-in. */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
40
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
41 /* { dg-final { scan-assembler-times {\mvstrihr\.} 4 { target { be } } } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
42 /* { dg-final { scan-assembler-times {\mvstrihr\M[^.]} 0 { target { be } } } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
43 /* { dg-final { scan-assembler-times {\mvstrihl} 0 { target { be } } } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
44 /* { dg-final { scan-assembler-times {\mvstrihl\.} 4 { target { le } } } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
45 /* { dg-final { scan-assembler-times {\mvstrihl\M[^.]} 0 { target { le } } } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
46 /* { dg-final { scan-assembler-times {\mvstrihr} 0 { target { le } } } } */