1  /* Derived from PR optimization/11700.  */
       2  /* The compiler used to ICE during reload for m68k targets.  */
       3  
       4  /* { dg-skip-if "exceeds eBPF stack limit" { bpf-*-* } } */
       5  
       6  void check_complex (__complex__ double, __complex__ double,
       7                      __complex__ double, __complex__ int);
       8  void check_float (double, double, double, int);
       9  extern double _Complex conj (double _Complex);
      10  extern double carg (double _Complex __z);
      11  
      12  static double minus_zero;
      13  
      14  void
      15  conj_test (void)
      16  {
      17    check_complex (conj (({ __complex__ double __retval;
      18  			  __real__ __retval = (0.0);
      19  			  __imag__ __retval = (0.0);
      20  			  __retval; })),
      21  		 ({ __complex__ double __retval;
      22  		    __real__ __retval = (0.0);
      23  		    __imag__ __retval = (minus_zero);
      24  		    __retval; }), 0, 0);
      25  }
      26  
      27  void
      28  carg_test (void)
      29  {
      30    check_float (carg (({ __complex__ double __retval;
      31  			__real__ __retval = (2.0);
      32  			__imag__ __retval = (0);
      33  			__retval; })), 0, 0, 0);
      34  }
      35