1  /* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
       2  
       3  #include "test_sve_acle.h"
       4  
       5  /*
       6  ** insr_x0_u64_tied1:
       7  **	insr	z0\.d, x0
       8  **	ret
       9  */
      10  TEST_UNIFORM_ZX (insr_x0_u64_tied1, svuint64_t, uint64_t,
      11  		 z0 = svinsr_n_u64 (z0, x0),
      12  		 z0 = svinsr (z0, x0))
      13  
      14  /*
      15  ** insr_x0_u64_untied:
      16  **	movprfx	z0, z1
      17  **	insr	z0\.d, x0
      18  **	ret
      19  */
      20  TEST_UNIFORM_ZX (insr_x0_u64_untied, svuint64_t, uint64_t,
      21  		 z0 = svinsr_n_u64 (z1, x0),
      22  		 z0 = svinsr (z1, x0))
      23  
      24  /*
      25  ** insr_0_u64_tied1:
      26  **	insr	z0\.d, xzr
      27  **	ret
      28  */
      29  TEST_UNIFORM_Z (insr_0_u64_tied1, svuint64_t,
      30  		z0 = svinsr_n_u64 (z0, 0),
      31  		z0 = svinsr (z0, 0))
      32  
      33  /*
      34  ** insr_0_u64_untied:
      35  **	movprfx	z0, z1
      36  **	insr	z0\.d, xzr
      37  **	ret
      38  */
      39  TEST_UNIFORM_Z (insr_0_u64_untied, svuint64_t,
      40  		z0 = svinsr_n_u64 (z1, 0),
      41  		z0 = svinsr (z1, 0))
      42  
      43  /*
      44  ** insr_1_u64:
      45  ** (
      46  **	mov	(x[0-9]+), #?1
      47  **	insr	z0\.d, \1
      48  ** |
      49  **	movi	v([0-9]+)\.2d, 0x1
      50  **	insr	z0\.d, d\2
      51  ** )
      52  **	ret
      53  */
      54  TEST_UNIFORM_Z (insr_1_u64, svuint64_t,
      55  		z0 = svinsr_n_u64 (z0, 1),
      56  		z0 = svinsr (z0, 1))