(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
powerpc/
sse4_1-round.h
       1  #include <fenv.h>
       2  #include <smmintrin.h>
       3  #include "sse4_1-check.h"
       4  
       5  #define DIM(a) (sizeof (a) / sizeof (a)[0])
       6  
       7  static int modes[] = { FE_TONEAREST, FE_UPWARD, FE_DOWNWARD, FE_TOWARDZERO };
       8  
       9  static void
      10  TEST (void)
      11  {
      12    int i, j, ri, round_save;
      13  
      14    round_save = fegetround ();
      15    for (ri = 0; ri < DIM (modes); ri++) {
      16      fesetround (modes[ri]);
      17      for (i = 0; i < DIM (data); i++) {
      18        union value guess;
      19        guess.x = ROUND_INTRIN (data[i].value.x, /* Ignored.  */);
      20        for (j = 0; j < DIM (data[i].value.f); j++) {
      21          if (guess.f[j] != data[i].answer[j])
      22            abort ();
      23        }
      24      }
      25    }
      26    fesetround (round_save);
      27  }