(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
sparc/
fpcmpshl.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-mvis4b" } */
       3  
       4  typedef unsigned char vec8 __attribute__((vector_size(8)));
       5  typedef short vec16 __attribute__((vector_size(8)));
       6  typedef int vec32 __attribute__((vector_size(8)));
       7  
       8  long test_fpcmple8shl (vec8 a, vec8 b)
       9  {
      10    return __builtin_vis_fpcmple8shl (a, b, 2);
      11  }
      12  
      13  long test_fpcmpgt8shl (vec8 a, vec8 b)
      14  {
      15    return __builtin_vis_fpcmpgt8shl (a, b, 2);
      16  }
      17  
      18  long test_fpcmpeq8shl (vec8 a, vec8 b)
      19  {
      20    return __builtin_vis_fpcmpeq8shl (a, b, 2);
      21  }
      22  
      23  long test_fpcmpne8shl (vec8 a, vec8 b)
      24  {
      25    return __builtin_vis_fpcmpne8shl (a, b, 2);
      26  }
      27  
      28  long test_fpcmple16shl (vec16 a, vec16 b)
      29  {
      30    return __builtin_vis_fpcmple16shl (a, b, 2);
      31  }
      32  
      33  long test_fpcmpgt16shl (vec16 a, vec16 b)
      34  {
      35    return __builtin_vis_fpcmpgt16shl (a, b, 2);
      36  }
      37  
      38  long test_fpcmpeq16shl (vec16 a, vec16 b)
      39  {
      40    return __builtin_vis_fpcmpeq16shl (a, b, 2);
      41  }
      42  
      43  long test_fpcmpne16shl (vec16 a, vec16 b)
      44  {
      45    return __builtin_vis_fpcmpne16shl (a, b, 2);
      46  }
      47  
      48  long test_fpcmple32shl (vec32 a, vec32 b)
      49  {
      50    return __builtin_vis_fpcmple32shl (a, b, 2);
      51  }
      52  
      53  long test_fpcmpgt32shl (vec32 a, vec32 b)
      54  {
      55    return __builtin_vis_fpcmpgt32shl (a, b, 2);
      56  }
      57  
      58  long test_fpcmpeq32shl (vec32 a, vec32 b)
      59  {
      60    return __builtin_vis_fpcmpeq32shl (a, b, 2);
      61  }
      62  
      63  long test_fpcmpne32shl (vec32 a, vec32 b)
      64  {
      65    return __builtin_vis_fpcmpne32shl (a, b, 2);
      66  }
      67  
      68  /* { dg-final { scan-assembler "fpcmple8shl\t%" } } */
      69  /* { dg-final { scan-assembler "fpcmpgt8shl\t%" } } */
      70  /* { dg-final { scan-assembler "fpcmpeq8shl\t%" } } */
      71  /* { dg-final { scan-assembler "fpcmpne8shl\t%" } } */
      72  
      73  /* { dg-final { scan-assembler "fpcmple16shl\t%" } } */
      74  /* { dg-final { scan-assembler "fpcmpgt16shl\t%" } } */
      75  /* { dg-final { scan-assembler "fpcmpeq16shl\t%" } } */
      76  /* { dg-final { scan-assembler "fpcmpne16shl\t%" } } */
      77  
      78  /* { dg-final { scan-assembler "fpcmple32shl\t%" } } */
      79  /* { dg-final { scan-assembler "fpcmpgt32shl\t%" } } */
      80  /* { dg-final { scan-assembler "fpcmpeq32shl\t%" } } */
      81  /* { dg-final { scan-assembler "fpcmpne32shl\t%" } } */