aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/s390/spaceship-int-1.c
blob: 8ca2677527a2e5da057a78f27733c1cb6139c700 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/* { dg-do compile { target lp64 } } */
/* { dg-options "-O2 -mzarch -march=z13 -fdump-tree-optimized" } */
/* { dg-final { scan-tree-dump-times {\.SPACESHIP \([^,]+, [^,]+, -1\)} 4 optimized } } */
/* { dg-final { scan-tree-dump-times {\.SPACESHIP \([^,]+, [^,]+, 1\)} 5 optimized } } */
/* { dg-final { scan-assembler-times {\tlhi} 9 } } */
/* { dg-final { scan-assembler-times {\tloc} 18 } } */

#define TEST(T, U)		\
  int test_##U (T x, T y)	\
  {				\
    if (x == y)			\
      return 0;			\
    else if (x < y)		\
      return -1;		\
    else			\
      return 1;			\
  }

TEST(signed char, schar)
TEST(unsigned char, uchar)
TEST(char, char)

TEST(short, sshort)
TEST(unsigned short, ushort)

TEST(int, sint)
TEST(unsigned int, uint)

TEST(long, slong)
TEST(unsigned long, ulong)