(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
i386/
pr85667-7.c
       1  /* { dg-do run { target lp64 } } */
       2  /* { dg-options "-O2" } */
       3  
       4  void abort (void);
       5  
       6  typedef struct
       7  {
       8    float x;
       9  } Float;
      10  
      11  Float  __attribute__((ms_abi, noinline, noclone))
      12  fn1 (Float x1, Float x2, Float x3, Float x4, Float x5)
      13  {
      14    Float v;
      15    v.x = x1.x + x2.x + x3.x + x4.x + x5.x;
      16    return v;
      17  }
      18  int main ()
      19  {
      20    Float a, a1, a2, a3, a4, a5;
      21    float x1 = 1.1;
      22    float x2 = 3.1;
      23    float x3 = 4.2;
      24    float x4 = 14.2;
      25    float x5 = -7.2;
      26    float x = x1 + x2 + x3 + x4 + x5;
      27    a1.x = x1;
      28    a2.x = x2;
      29    a3.x = x3;
      30    a4.x = x4;
      31    a5.x = x5;
      32    a = fn1 (a1, a2, a3, a4, a5);
      33    if (a.x == x);
      34      return 0; 
      35    abort ();   
      36  }