(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
sve/
acle/
asm/
qdecp_u32.c
       1  /* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
       2  
       3  #include "test_sve_acle.h"
       4  
       5  /*
       6  ** qdecp_u32_tied:
       7  **	uqdecp	z0\.s, p0
       8  **	ret
       9  */
      10  TEST_UNIFORM_Z (qdecp_u32_tied, svuint32_t,
      11  		z0 = svqdecp_u32 (z0, p0),
      12  		z0 = svqdecp (z0, p0))
      13  
      14  /*
      15  ** qdecp_u32_untied:
      16  **	movprfx	z0, z1
      17  **	uqdecp	z0\.s, p0
      18  **	ret
      19  */
      20  TEST_UNIFORM_Z (qdecp_u32_untied, svuint32_t,
      21  		z0 = svqdecp_u32 (z1, p0),
      22  		z0 = svqdecp (z1, p0))
      23  
      24  /*
      25  ** qdecp_n_u32_b8_tied:
      26  **	uqdecp	w0, p0\.b
      27  **	ret
      28  */
      29  TEST_UNIFORM_S (qdecp_n_u32_b8_tied, uint32_t,
      30  		x0 = svqdecp_n_u32_b8 (x0, p0),
      31  		x0 = svqdecp_b8 (x0, p0))
      32  
      33  /*
      34  ** qdecp_n_u32_b8_untied:
      35  **	mov	w0, w1
      36  **	uqdecp	w0, p0\.b
      37  **	ret
      38  */
      39  TEST_UNIFORM_S (qdecp_n_u32_b8_untied, uint32_t,
      40  		x0 = svqdecp_n_u32_b8 (x1, p0),
      41  		x0 = svqdecp_b8 (x1, p0))
      42  
      43  /*
      44  ** qdecp_n_u32_b16_tied:
      45  **	uqdecp	w0, p0\.h
      46  **	ret
      47  */
      48  TEST_UNIFORM_S (qdecp_n_u32_b16_tied, uint32_t,
      49  		x0 = svqdecp_n_u32_b16 (x0, p0),
      50  		x0 = svqdecp_b16 (x0, p0))
      51  
      52  /*
      53  ** qdecp_n_u32_b16_untied:
      54  **	mov	w0, w1
      55  **	uqdecp	w0, p0\.h
      56  **	ret
      57  */
      58  TEST_UNIFORM_S (qdecp_n_u32_b16_untied, uint32_t,
      59  		x0 = svqdecp_n_u32_b16 (x1, p0),
      60  		x0 = svqdecp_b16 (x1, p0))
      61  
      62  /*
      63  ** qdecp_n_u32_b32_tied:
      64  **	uqdecp	w0, p0\.s
      65  **	ret
      66  */
      67  TEST_UNIFORM_S (qdecp_n_u32_b32_tied, uint32_t,
      68  		x0 = svqdecp_n_u32_b32 (x0, p0),
      69  		x0 = svqdecp_b32 (x0, p0))
      70  
      71  /*
      72  ** qdecp_n_u32_b32_untied:
      73  **	mov	w0, w1
      74  **	uqdecp	w0, p0\.s
      75  **	ret
      76  */
      77  TEST_UNIFORM_S (qdecp_n_u32_b32_untied, uint32_t,
      78  		x0 = svqdecp_n_u32_b32 (x1, p0),
      79  		x0 = svqdecp_b32 (x1, p0))
      80  
      81  /*
      82  ** qdecp_n_u32_b64_tied:
      83  **	uqdecp	w0, p0\.d
      84  **	ret
      85  */
      86  TEST_UNIFORM_S (qdecp_n_u32_b64_tied, uint32_t,
      87  		x0 = svqdecp_n_u32_b64 (x0, p0),
      88  		x0 = svqdecp_b64 (x0, p0))
      89  
      90  /*
      91  ** qdecp_n_u32_b64_untied:
      92  **	mov	w0, w1
      93  **	uqdecp	w0, p0\.d
      94  **	ret
      95  */
      96  TEST_UNIFORM_S (qdecp_n_u32_b64_untied, uint32_t,
      97  		x0 = svqdecp_n_u32_b64 (x1, p0),
      98  		x0 = svqdecp_b64 (x1, p0))