testsuite: Adjust expected instruction count for PPC fold testcases.
[official-gcc.git] / gcc / testsuite / gcc.target / powerpc / fold-vec-logical-other-longlong.c
blobd4b85796406bcc7a3e2ba8e977fa31552a2f4d34
1 /* Verify that overloaded built-ins for vec_orc and vec_nand with long long
2 inputs produce the right results. */
4 /* { dg-do compile } */
5 /* { dg-require-effective-target powerpc_p8vector_ok } */
6 /* { dg-options "-mpower8-vector -O1" } */
8 #include <altivec.h>
10 vector signed long long
11 test1_orc (vector bool long long x, vector signed long long y)
13 vector signed long long *foo;
14 *foo += vec_orc (x, y);
15 return *foo;
18 vector signed long long
19 test1_nand (vector bool long long x, vector signed long long y)
21 vector signed long long *foo;
22 *foo += vec_nand (x, y);
23 return *foo;
26 vector signed long long
27 test2_orc (vector signed long long x, vector bool long long y)
29 vector signed long long *foo;
30 *foo += vec_orc (x, y);
31 return *foo;
34 vector signed long long
35 test2_nand (vector signed long long x, vector bool long long y)
37 vector signed long long *foo;
38 *foo += vec_nand (x, y);
39 return *foo;
42 vector signed long long
43 test3_orc (vector signed long long x, vector signed long long y)
45 vector signed long long *foo;
46 *foo += vec_orc (x, y);
47 return *foo;
50 vector signed long long
51 test3_nand (vector signed long long x, vector signed long long y)
53 vector signed long long *foo;
54 *foo += vec_nand (x, y);
55 return *foo;
58 vector unsigned long long
59 test4_orc (vector bool long long x, vector unsigned long long y)
61 vector unsigned long long *foo;
62 *foo += vec_orc (x, y);
63 return *foo;
66 vector unsigned long long
67 test4_nand (vector bool long long x, vector unsigned long long y)
69 vector unsigned long long *foo;
70 *foo += vec_nand (x, y);
71 return *foo;
74 vector unsigned long long
75 test5_orc (vector unsigned long long x, vector bool long long y)
77 vector unsigned long long *foo;
78 *foo += vec_orc (x, y);
79 return *foo;
82 vector unsigned long long
83 test5_nand (vector unsigned long long x, vector bool long long y)
85 vector unsigned long long *foo;
86 *foo += vec_nand (x, y);
87 return *foo;
90 vector unsigned long long
91 test6_orc (vector unsigned long long x, vector unsigned long long y)
93 vector unsigned long long *foo;
94 *foo += vec_orc (x, y);
95 return *foo;
97 vector unsigned long long
98 test6_nand (vector unsigned long long x, vector unsigned long long y)
100 vector unsigned long long *foo;
101 *foo += vec_nand (x, y);
102 return *foo;
105 /* { dg-final { scan-assembler-times {\mxxlnand\M} 3 } } */
106 /* { dg-final { scan-assembler-times {\mxxlorc\M} 6 } } */