(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
sve/
acle/
general/
cpy_1.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-O" } */
       3  /* { dg-final { check-function-bodies "**" "" } } */
       4  
       5  #include <arm_sve.h>
       6  
       7  #ifdef __cplusplus
       8  extern "C" {
       9  #endif
      10  
      11  /*
      12  ** dup_x0_m:
      13  **	...
      14  **	add	(x[0-9]+), x0, #?1
      15  **	mov	(p[0-7])\.b, p15\.b
      16  **	mov	z0\.d, \2/m, \1
      17  **	...
      18  **	ret
      19  */
      20  svuint64_t
      21  dup_x0_m (svuint64_t z0, uint64_t x0)
      22  {
      23    register svbool_t pg asm ("p15");
      24    asm volatile ("" : "=Upa" (pg));
      25    return svdup_u64_m (z0, pg, x0 + 1);
      26  }
      27  
      28  /*
      29  ** dup_d1_z:
      30  **	...
      31  **	mov	(p[0-7])\.b, p15\.b
      32  **	mov	z0\.d, \1/m, d1
      33  **	...
      34  **	ret
      35  */
      36  svfloat64_t
      37  dup_d1_z (svfloat64_t z0, float64_t d1)
      38  {
      39    register svbool_t pg asm ("p15");
      40    asm volatile ("" : "=Upa" (pg));
      41    return svdup_f64_m (z0, pg, d1);
      42  }
      43  
      44  #ifdef __cplusplus
      45  }
      46  #endif