[AArch64/arm] PR testsuite/85326 Avoid C++ tests when C++ compiler not present
[official-gcc.git] / gcc / testsuite / gcc.target / aarch64 / csinc-1.c
blob132a0f67939b670fe2eea26ddaf91541eb371ed7
1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
4 unsigned int
5 test_csinc32_ifcvt(unsigned int w0,
6 unsigned int w1,
7 unsigned int w2) {
8 /* { dg-final { scan-assembler "csinc\tw\[0-9\]*.*ne" } } */
9 if (w0 == w1)
10 ++ w2;
12 return w2;
15 unsigned int
16 test_csinc32_condasn1(unsigned int w0,
17 unsigned int w1,
18 unsigned int w2,
19 unsigned int w3) {
20 unsigned int w4;
22 /* { dg-final { scan-assembler "csinc\tw\[0-9\]*.*ne" } } */
23 w4 = (w0 == w1) ? (w3 + 1) : w2;
24 return w4;
27 unsigned int
28 test_csinc32_condasn2(unsigned int w0,
29 unsigned int w1,
30 unsigned int w2,
31 unsigned int w3) {
32 unsigned int w4;
34 /* { dg-final { scan-assembler "csinc\tw\[0-9\]*.*eq" } } */
35 w4 = (w0 == w1) ? w2 : (w3 + 1);
36 return w4;
39 unsigned long long
40 test_csinc64_ifcvt(unsigned long long x0,
41 unsigned long long x1,
42 unsigned long long x2) {
43 /* { dg-final { scan-assembler "csinc\tx\[0-9\]*.*ne" } } */
44 if (x0 == x1)
45 ++ x2;
47 return x2;
50 unsigned long long
51 test_csinc64_condasn1(unsigned long long x0,
52 unsigned long long x1,
53 unsigned long long x2,
54 unsigned long long x3) {
55 unsigned long long x4;
57 /* { dg-final { scan-assembler "csinc\tx\[0-9\]*.*ne" } } */
58 x4 = (x0 == x1) ? (x3 + 1) : x2;
59 return x4;
62 unsigned long long
63 test_csinc64_condasn2(unsigned long long x0,
64 unsigned long long x1,
65 unsigned long long x2,
66 unsigned long long x3) {
67 unsigned long long x4;
69 /* { dg-final { scan-assembler "csinc\tx\[0-9\]*.*eq" } } */
70 x4 = (x0 == x1) ? x2 : (x3 + 1);
71 return x4;