(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
simd/
vcalts_f32.c
       1  /* Test the vcalts_f32 AArch64 SIMD intrinsic.  */
       2  
       3  /* { dg-do run } */
       4  /* { dg-options "-save-temps -O3" } */
       5  
       6  #include "arm_neon.h"
       7  
       8  #define SIZE 6
       9  
      10  extern void abort (void);
      11  
      12  volatile float32_t in[SIZE] = { -10.4, -3.14, 0.0, 1.5, 5.3, 532.3 };
      13  
      14  int
      15  main (void)
      16  {
      17    volatile uint32_t expected;
      18    uint32_t actual;
      19  
      20    int i, j;
      21  
      22    for (i = 0; i < SIZE; ++i)
      23     for (j = 0; j < SIZE; ++j)
      24       {
      25          expected = __builtin_fabs (in[i]) < __builtin_fabs (in[j]) ? -1 : 0;
      26          actual = vcalts_f32 (in[i], in[j]);
      27  
      28          if (actual != expected)
      29            abort ();
      30       }
      31  
      32    return 0;
      33  }
      34  
      35  /* { dg-final { scan-assembler "facgt\[ \t\]+\[sS\]\[0-9\]+, ?\[sS\]\[0-9\]+, ?\[sS\]\[0-9\]+\n" } } */