(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
sve/
acle/
asm/
cvt_f32.c
       1  /* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
       2  
       3  #include "test_sve_acle.h"
       4  
       5  /*
       6  ** cvt_f32_f16_m_tied1:
       7  **	fcvt	z0\.s, p0/m, z4\.h
       8  **	ret
       9  */
      10  TEST_DUAL_Z (cvt_f32_f16_m_tied1, svfloat32_t, svfloat16_t,
      11  	     z0 = svcvt_f32_f16_m (z0, p0, z4),
      12  	     z0 = svcvt_f32_m (z0, p0, z4))
      13  
      14  /*
      15  ** cvt_f32_f16_m_tied2:
      16  **	mov	(z[0-9]+)\.d, z0\.d
      17  **	movprfx	z0, z4
      18  **	fcvt	z0\.s, p0/m, \1\.h
      19  **	ret
      20  */
      21  TEST_DUAL_Z_REV (cvt_f32_f16_m_tied2, svfloat32_t, svfloat16_t,
      22  		 z0_res = svcvt_f32_f16_m (z4, p0, z0),
      23  		 z0_res = svcvt_f32_m (z4, p0, z0))
      24  
      25  /*
      26  ** cvt_f32_f16_m_untied:
      27  **	movprfx	z0, z1
      28  **	fcvt	z0\.s, p0/m, z4\.h
      29  **	ret
      30  */
      31  TEST_DUAL_Z (cvt_f32_f16_m_untied, svfloat32_t, svfloat16_t,
      32  	     z0 = svcvt_f32_f16_m (z1, p0, z4),
      33  	     z0 = svcvt_f32_m (z1, p0, z4))
      34  
      35  /*
      36  ** cvt_f32_f64_m_tied1:
      37  **	fcvt	z0\.s, p0/m, z4\.d
      38  **	ret
      39  */
      40  TEST_DUAL_Z (cvt_f32_f64_m_tied1, svfloat32_t, svfloat64_t,
      41  	     z0 = svcvt_f32_f64_m (z0, p0, z4),
      42  	     z0 = svcvt_f32_m (z0, p0, z4))
      43  
      44  /*
      45  ** cvt_f32_f64_m_tied2:
      46  **	mov	(z[0-9]+\.d), z0\.d
      47  **	movprfx	z0, z4
      48  **	fcvt	z0\.s, p0/m, \1
      49  **	ret
      50  */
      51  TEST_DUAL_Z_REV (cvt_f32_f64_m_tied2, svfloat32_t, svfloat64_t,
      52  		 z0_res = svcvt_f32_f64_m (z4, p0, z0),
      53  		 z0_res = svcvt_f32_m (z4, p0, z0))
      54  
      55  /*
      56  ** cvt_f32_f64_m_untied:
      57  **	movprfx	z0, z1
      58  **	fcvt	z0\.s, p0/m, z4\.d
      59  **	ret
      60  */
      61  TEST_DUAL_Z (cvt_f32_f64_m_untied, svfloat32_t, svfloat64_t,
      62  	     z0 = svcvt_f32_f64_m (z1, p0, z4),
      63  	     z0 = svcvt_f32_m (z1, p0, z4))
      64  
      65  /*
      66  ** cvt_f32_s32_m_tied1:
      67  **	scvtf	z0\.s, p0/m, z4\.s
      68  **	ret
      69  */
      70  TEST_DUAL_Z (cvt_f32_s32_m_tied1, svfloat32_t, svint32_t,
      71  	     z0 = svcvt_f32_s32_m (z0, p0, z4),
      72  	     z0 = svcvt_f32_m (z0, p0, z4))
      73  
      74  /*
      75  ** cvt_f32_s32_m_tied2:
      76  **	mov	(z[0-9]+)\.d, z0\.d
      77  **	movprfx	z0, z4
      78  **	scvtf	z0\.s, p0/m, \1\.s
      79  **	ret
      80  */
      81  TEST_DUAL_Z_REV (cvt_f32_s32_m_tied2, svfloat32_t, svint32_t,
      82  		 z0_res = svcvt_f32_s32_m (z4, p0, z0),
      83  		 z0_res = svcvt_f32_m (z4, p0, z0))
      84  
      85  /*
      86  ** cvt_f32_s32_m_untied:
      87  **	movprfx	z0, z1
      88  **	scvtf	z0\.s, p0/m, z4\.s
      89  **	ret
      90  */
      91  TEST_DUAL_Z (cvt_f32_s32_m_untied, svfloat32_t, svint32_t,
      92  	     z0 = svcvt_f32_s32_m (z1, p0, z4),
      93  	     z0 = svcvt_f32_m (z1, p0, z4))
      94  
      95  /*
      96  ** cvt_f32_s64_m_tied1:
      97  **	scvtf	z0\.s, p0/m, z4\.d
      98  **	ret
      99  */
     100  TEST_DUAL_Z (cvt_f32_s64_m_tied1, svfloat32_t, svint64_t,
     101  	     z0 = svcvt_f32_s64_m (z0, p0, z4),
     102  	     z0 = svcvt_f32_m (z0, p0, z4))
     103  
     104  /*
     105  ** cvt_f32_s64_m_tied2:
     106  **	mov	(z[0-9]+\.d), z0\.d
     107  **	movprfx	z0, z4
     108  **	scvtf	z0\.s, p0/m, \1
     109  **	ret
     110  */
     111  TEST_DUAL_Z_REV (cvt_f32_s64_m_tied2, svfloat32_t, svint64_t,
     112  		 z0_res = svcvt_f32_s64_m (z4, p0, z0),
     113  		 z0_res = svcvt_f32_m (z4, p0, z0))
     114  
     115  /*
     116  ** cvt_f32_s64_m_untied:
     117  **	movprfx	z0, z1
     118  **	scvtf	z0\.s, p0/m, z4\.d
     119  **	ret
     120  */
     121  TEST_DUAL_Z (cvt_f32_s64_m_untied, svfloat32_t, svint64_t,
     122  	     z0 = svcvt_f32_s64_m (z1, p0, z4),
     123  	     z0 = svcvt_f32_m (z1, p0, z4))
     124  
     125  /*
     126  ** cvt_f32_u32_m_tied1:
     127  **	ucvtf	z0\.s, p0/m, z4\.s
     128  **	ret
     129  */
     130  TEST_DUAL_Z (cvt_f32_u32_m_tied1, svfloat32_t, svuint32_t,
     131  	     z0 = svcvt_f32_u32_m (z0, p0, z4),
     132  	     z0 = svcvt_f32_m (z0, p0, z4))
     133  
     134  /*
     135  ** cvt_f32_u32_m_tied2:
     136  **	mov	(z[0-9]+)\.d, z0\.d
     137  **	movprfx	z0, z4
     138  **	ucvtf	z0\.s, p0/m, \1\.s
     139  **	ret
     140  */
     141  TEST_DUAL_Z_REV (cvt_f32_u32_m_tied2, svfloat32_t, svuint32_t,
     142  		 z0_res = svcvt_f32_u32_m (z4, p0, z0),
     143  		 z0_res = svcvt_f32_m (z4, p0, z0))
     144  
     145  /*
     146  ** cvt_f32_u32_m_untied:
     147  **	movprfx	z0, z1
     148  **	ucvtf	z0\.s, p0/m, z4\.s
     149  **	ret
     150  */
     151  TEST_DUAL_Z (cvt_f32_u32_m_untied, svfloat32_t, svuint32_t,
     152  	     z0 = svcvt_f32_u32_m (z1, p0, z4),
     153  	     z0 = svcvt_f32_m (z1, p0, z4))
     154  
     155  /*
     156  ** cvt_f32_u64_m_tied1:
     157  **	ucvtf	z0\.s, p0/m, z4\.d
     158  **	ret
     159  */
     160  TEST_DUAL_Z (cvt_f32_u64_m_tied1, svfloat32_t, svuint64_t,
     161  	     z0 = svcvt_f32_u64_m (z0, p0, z4),
     162  	     z0 = svcvt_f32_m (z0, p0, z4))
     163  
     164  /*
     165  ** cvt_f32_u64_m_tied2:
     166  **	mov	(z[0-9]+\.d), z0\.d
     167  **	movprfx	z0, z4
     168  **	ucvtf	z0\.s, p0/m, \1
     169  **	ret
     170  */
     171  TEST_DUAL_Z_REV (cvt_f32_u64_m_tied2, svfloat32_t, svuint64_t,
     172  		 z0_res = svcvt_f32_u64_m (z4, p0, z0),
     173  		 z0_res = svcvt_f32_m (z4, p0, z0))
     174  
     175  /*
     176  ** cvt_f32_u64_m_untied:
     177  **	movprfx	z0, z1
     178  **	ucvtf	z0\.s, p0/m, z4\.d
     179  **	ret
     180  */
     181  TEST_DUAL_Z (cvt_f32_u64_m_untied, svfloat32_t, svuint64_t,
     182  	     z0 = svcvt_f32_u64_m (z1, p0, z4),
     183  	     z0 = svcvt_f32_m (z1, p0, z4))
     184  
     185  /*
     186  ** cvt_f32_f16_z_tied1:
     187  **	mov	(z[0-9]+)\.d, z0\.d
     188  **	movprfx	z0\.s, p0/z, \1\.s
     189  **	fcvt	z0\.s, p0/m, \1\.h
     190  **	ret
     191  */
     192  TEST_DUAL_Z_REV (cvt_f32_f16_z_tied1, svfloat32_t, svfloat16_t,
     193  		 z0_res = svcvt_f32_f16_z (p0, z0),
     194  		 z0_res = svcvt_f32_z (p0, z0))
     195  
     196  /*
     197  ** cvt_f32_f16_z_untied:
     198  **	movprfx	z0\.s, p0/z, z4\.s
     199  **	fcvt	z0\.s, p0/m, z4\.h
     200  **	ret
     201  */
     202  TEST_DUAL_Z (cvt_f32_f16_z_untied, svfloat32_t, svfloat16_t,
     203  	     z0 = svcvt_f32_f16_z (p0, z4),
     204  	     z0 = svcvt_f32_z (p0, z4))
     205  
     206  /*
     207  ** cvt_f32_f64_z_tied1:
     208  **	mov	(z[0-9]+\.d), z0\.d
     209  **	movprfx	z0\.d, p0/z, \1
     210  **	fcvt	z0\.s, p0/m, \1
     211  **	ret
     212  */
     213  TEST_DUAL_Z_REV (cvt_f32_f64_z_tied1, svfloat32_t, svfloat64_t,
     214  		 z0_res = svcvt_f32_f64_z (p0, z0),
     215  		 z0_res = svcvt_f32_z (p0, z0))
     216  
     217  /*
     218  ** cvt_f32_f64_z_untied:
     219  **	movprfx	z0\.d, p0/z, z4\.d
     220  **	fcvt	z0\.s, p0/m, z4\.d
     221  **	ret
     222  */
     223  TEST_DUAL_Z (cvt_f32_f64_z_untied, svfloat32_t, svfloat64_t,
     224  	     z0 = svcvt_f32_f64_z (p0, z4),
     225  	     z0 = svcvt_f32_z (p0, z4))
     226  
     227  /*
     228  ** cvt_f32_s32_z_tied1:
     229  **	mov	(z[0-9]+)\.d, z0\.d
     230  **	movprfx	z0\.s, p0/z, \1\.s
     231  **	scvtf	z0\.s, p0/m, \1\.s
     232  **	ret
     233  */
     234  TEST_DUAL_Z_REV (cvt_f32_s32_z_tied1, svfloat32_t, svint32_t,
     235  		 z0_res = svcvt_f32_s32_z (p0, z0),
     236  		 z0_res = svcvt_f32_z (p0, z0))
     237  
     238  /*
     239  ** cvt_f32_s32_z_untied:
     240  **	movprfx	z0\.s, p0/z, z4\.s
     241  **	scvtf	z0\.s, p0/m, z4\.s
     242  **	ret
     243  */
     244  TEST_DUAL_Z (cvt_f32_s32_z_untied, svfloat32_t, svint32_t,
     245  	     z0 = svcvt_f32_s32_z (p0, z4),
     246  	     z0 = svcvt_f32_z (p0, z4))
     247  
     248  /*
     249  ** cvt_f32_s64_z_tied1:
     250  **	mov	(z[0-9]+\.d), z0\.d
     251  **	movprfx	z0\.d, p0/z, \1
     252  **	scvtf	z0\.s, p0/m, \1
     253  **	ret
     254  */
     255  TEST_DUAL_Z_REV (cvt_f32_s64_z_tied1, svfloat32_t, svint64_t,
     256  		 z0_res = svcvt_f32_s64_z (p0, z0),
     257  		 z0_res = svcvt_f32_z (p0, z0))
     258  
     259  /*
     260  ** cvt_f32_s64_z_untied:
     261  **	movprfx	z0\.d, p0/z, z4\.d
     262  **	scvtf	z0\.s, p0/m, z4\.d
     263  **	ret
     264  */
     265  TEST_DUAL_Z (cvt_f32_s64_z_untied, svfloat32_t, svint64_t,
     266  	     z0 = svcvt_f32_s64_z (p0, z4),
     267  	     z0 = svcvt_f32_z (p0, z4))
     268  
     269  /*
     270  ** cvt_f32_u32_z_tied1:
     271  **	mov	(z[0-9]+)\.d, z0\.d
     272  **	movprfx	z0\.s, p0/z, \1\.s
     273  **	ucvtf	z0\.s, p0/m, \1\.s
     274  **	ret
     275  */
     276  TEST_DUAL_Z_REV (cvt_f32_u32_z_tied1, svfloat32_t, svuint32_t,
     277  		 z0_res = svcvt_f32_u32_z (p0, z0),
     278  		 z0_res = svcvt_f32_z (p0, z0))
     279  
     280  /*
     281  ** cvt_f32_u32_z_untied:
     282  **	movprfx	z0\.s, p0/z, z4\.s
     283  **	ucvtf	z0\.s, p0/m, z4\.s
     284  **	ret
     285  */
     286  TEST_DUAL_Z (cvt_f32_u32_z_untied, svfloat32_t, svuint32_t,
     287  	     z0 = svcvt_f32_u32_z (p0, z4),
     288  	     z0 = svcvt_f32_z (p0, z4))
     289  
     290  /*
     291  ** cvt_f32_u64_z_tied1:
     292  **	mov	(z[0-9]+\.d), z0\.d
     293  **	movprfx	z0\.d, p0/z, \1
     294  **	ucvtf	z0\.s, p0/m, \1
     295  **	ret
     296  */
     297  TEST_DUAL_Z_REV (cvt_f32_u64_z_tied1, svfloat32_t, svuint64_t,
     298  		 z0_res = svcvt_f32_u64_z (p0, z0),
     299  		 z0_res = svcvt_f32_z (p0, z0))
     300  
     301  /*
     302  ** cvt_f32_u64_z_untied:
     303  **	movprfx	z0\.d, p0/z, z4\.d
     304  **	ucvtf	z0\.s, p0/m, z4\.d
     305  **	ret
     306  */
     307  TEST_DUAL_Z (cvt_f32_u64_z_untied, svfloat32_t, svuint64_t,
     308  	     z0 = svcvt_f32_u64_z (p0, z4),
     309  	     z0 = svcvt_f32_z (p0, z4))
     310  
     311  /*
     312  ** cvt_f32_f16_x_tied1:
     313  **	fcvt	z0\.s, p0/m, z0\.h
     314  **	ret
     315  */
     316  TEST_DUAL_Z_REV (cvt_f32_f16_x_tied1, svfloat32_t, svfloat16_t,
     317  		 z0_res = svcvt_f32_f16_x (p0, z0),
     318  		 z0_res = svcvt_f32_x (p0, z0))
     319  
     320  /*
     321  ** cvt_f32_f16_x_untied:
     322  **	movprfx	z0, z4
     323  **	fcvt	z0\.s, p0/m, z4\.h
     324  **	ret
     325  */
     326  TEST_DUAL_Z (cvt_f32_f16_x_untied, svfloat32_t, svfloat16_t,
     327  	     z0 = svcvt_f32_f16_x (p0, z4),
     328  	     z0 = svcvt_f32_x (p0, z4))
     329  
     330  /*
     331  ** cvt_f32_f64_x_tied1:
     332  **	fcvt	z0\.s, p0/m, z0\.d
     333  **	ret
     334  */
     335  TEST_DUAL_Z_REV (cvt_f32_f64_x_tied1, svfloat32_t, svfloat64_t,
     336  		 z0_res = svcvt_f32_f64_x (p0, z0),
     337  		 z0_res = svcvt_f32_x (p0, z0))
     338  
     339  /*
     340  ** cvt_f32_f64_x_untied:
     341  **	movprfx	z0, z4
     342  **	fcvt	z0\.s, p0/m, z4\.d
     343  **	ret
     344  */
     345  TEST_DUAL_Z (cvt_f32_f64_x_untied, svfloat32_t, svfloat64_t,
     346  	     z0 = svcvt_f32_f64_x (p0, z4),
     347  	     z0 = svcvt_f32_x (p0, z4))
     348  
     349  /*
     350  ** cvt_f32_s32_x_tied1:
     351  **	scvtf	z0\.s, p0/m, z0\.s
     352  **	ret
     353  */
     354  TEST_DUAL_Z_REV (cvt_f32_s32_x_tied1, svfloat32_t, svint32_t,
     355  		 z0_res = svcvt_f32_s32_x (p0, z0),
     356  		 z0_res = svcvt_f32_x (p0, z0))
     357  
     358  /*
     359  ** cvt_f32_s32_x_untied:
     360  **	movprfx	z0, z4
     361  **	scvtf	z0\.s, p0/m, z4\.s
     362  **	ret
     363  */
     364  TEST_DUAL_Z (cvt_f32_s32_x_untied, svfloat32_t, svint32_t,
     365  	     z0 = svcvt_f32_s32_x (p0, z4),
     366  	     z0 = svcvt_f32_x (p0, z4))
     367  
     368  /*
     369  ** cvt_f32_s64_x_tied1:
     370  **	scvtf	z0\.s, p0/m, z0\.d
     371  **	ret
     372  */
     373  TEST_DUAL_Z_REV (cvt_f32_s64_x_tied1, svfloat32_t, svint64_t,
     374  		 z0_res = svcvt_f32_s64_x (p0, z0),
     375  		 z0_res = svcvt_f32_x (p0, z0))
     376  
     377  /*
     378  ** cvt_f32_s64_x_untied:
     379  **	movprfx	z0, z4
     380  **	scvtf	z0\.s, p0/m, z4\.d
     381  **	ret
     382  */
     383  TEST_DUAL_Z (cvt_f32_s64_x_untied, svfloat32_t, svint64_t,
     384  	     z0 = svcvt_f32_s64_x (p0, z4),
     385  	     z0 = svcvt_f32_x (p0, z4))
     386  
     387  /*
     388  ** cvt_f32_u32_x_tied1:
     389  **	ucvtf	z0\.s, p0/m, z0\.s
     390  **	ret
     391  */
     392  TEST_DUAL_Z_REV (cvt_f32_u32_x_tied1, svfloat32_t, svuint32_t,
     393  		 z0_res = svcvt_f32_u32_x (p0, z0),
     394  		 z0_res = svcvt_f32_x (p0, z0))
     395  
     396  /*
     397  ** cvt_f32_u32_x_untied:
     398  **	movprfx	z0, z4
     399  **	ucvtf	z0\.s, p0/m, z4\.s
     400  **	ret
     401  */
     402  TEST_DUAL_Z (cvt_f32_u32_x_untied, svfloat32_t, svuint32_t,
     403  	     z0 = svcvt_f32_u32_x (p0, z4),
     404  	     z0 = svcvt_f32_x (p0, z4))
     405  
     406  /*
     407  ** cvt_f32_u64_x_tied1:
     408  **	ucvtf	z0\.s, p0/m, z0\.d
     409  **	ret
     410  */
     411  TEST_DUAL_Z_REV (cvt_f32_u64_x_tied1, svfloat32_t, svuint64_t,
     412  		 z0_res = svcvt_f32_u64_x (p0, z0),
     413  		 z0_res = svcvt_f32_x (p0, z0))
     414  
     415  /*
     416  ** cvt_f32_u64_x_untied:
     417  **	movprfx	z0, z4
     418  **	ucvtf	z0\.s, p0/m, z4\.d
     419  **	ret
     420  */
     421  TEST_DUAL_Z (cvt_f32_u64_x_untied, svfloat32_t, svuint64_t,
     422  	     z0 = svcvt_f32_u64_x (p0, z4),
     423  	     z0 = svcvt_f32_x (p0, z4))
     424  
     425  /*
     426  ** ptrue_cvt_f32_f16_x_tied1:
     427  **	...
     428  **	ptrue	p[0-9]+\.b[^\n]*
     429  **	...
     430  **	ret
     431  */
     432  TEST_DUAL_Z_REV (ptrue_cvt_f32_f16_x_tied1, svfloat32_t, svfloat16_t,
     433  		 z0_res = svcvt_f32_f16_x (svptrue_b32 (), z0),
     434  		 z0_res = svcvt_f32_x (svptrue_b32 (), z0))
     435  
     436  /*
     437  ** ptrue_cvt_f32_f16_x_untied:
     438  **	...
     439  **	ptrue	p[0-9]+\.b[^\n]*
     440  **	...
     441  **	ret
     442  */
     443  TEST_DUAL_Z (ptrue_cvt_f32_f16_x_untied, svfloat32_t, svfloat16_t,
     444  	     z0 = svcvt_f32_f16_x (svptrue_b32 (), z4),
     445  	     z0 = svcvt_f32_x (svptrue_b32 (), z4))
     446  
     447  /*
     448  ** ptrue_cvt_f32_f64_x_tied1:
     449  **	...
     450  **	ptrue	p[0-9]+\.b[^\n]*
     451  **	...
     452  **	ret
     453  */
     454  TEST_DUAL_Z_REV (ptrue_cvt_f32_f64_x_tied1, svfloat32_t, svfloat64_t,
     455  		 z0_res = svcvt_f32_f64_x (svptrue_b64 (), z0),
     456  		 z0_res = svcvt_f32_x (svptrue_b64 (), z0))
     457  
     458  /*
     459  ** ptrue_cvt_f32_f64_x_untied:
     460  **	...
     461  **	ptrue	p[0-9]+\.b[^\n]*
     462  **	...
     463  **	ret
     464  */
     465  TEST_DUAL_Z (ptrue_cvt_f32_f64_x_untied, svfloat32_t, svfloat64_t,
     466  	     z0 = svcvt_f32_f64_x (svptrue_b64 (), z4),
     467  	     z0 = svcvt_f32_x (svptrue_b64 (), z4))
     468  
     469  /*
     470  ** ptrue_cvt_f32_s32_x_tied1:
     471  **	...
     472  **	ptrue	p[0-9]+\.b[^\n]*
     473  **	...
     474  **	ret
     475  */
     476  TEST_DUAL_Z_REV (ptrue_cvt_f32_s32_x_tied1, svfloat32_t, svint32_t,
     477  		 z0_res = svcvt_f32_s32_x (svptrue_b32 (), z0),
     478  		 z0_res = svcvt_f32_x (svptrue_b32 (), z0))
     479  
     480  /*
     481  ** ptrue_cvt_f32_s32_x_untied:
     482  **	...
     483  **	ptrue	p[0-9]+\.b[^\n]*
     484  **	...
     485  **	ret
     486  */
     487  TEST_DUAL_Z (ptrue_cvt_f32_s32_x_untied, svfloat32_t, svint32_t,
     488  	     z0 = svcvt_f32_s32_x (svptrue_b32 (), z4),
     489  	     z0 = svcvt_f32_x (svptrue_b32 (), z4))
     490  
     491  /*
     492  ** ptrue_cvt_f32_s64_x_tied1:
     493  **	...
     494  **	ptrue	p[0-9]+\.b[^\n]*
     495  **	...
     496  **	ret
     497  */
     498  TEST_DUAL_Z_REV (ptrue_cvt_f32_s64_x_tied1, svfloat32_t, svint64_t,
     499  		 z0_res = svcvt_f32_s64_x (svptrue_b64 (), z0),
     500  		 z0_res = svcvt_f32_x (svptrue_b64 (), z0))
     501  
     502  /*
     503  ** ptrue_cvt_f32_s64_x_untied:
     504  **	...
     505  **	ptrue	p[0-9]+\.b[^\n]*
     506  **	...
     507  **	ret
     508  */
     509  TEST_DUAL_Z (ptrue_cvt_f32_s64_x_untied, svfloat32_t, svint64_t,
     510  	     z0 = svcvt_f32_s64_x (svptrue_b64 (), z4),
     511  	     z0 = svcvt_f32_x (svptrue_b64 (), z4))
     512  
     513  /*
     514  ** ptrue_cvt_f32_u32_x_tied1:
     515  **	...
     516  **	ptrue	p[0-9]+\.b[^\n]*
     517  **	...
     518  **	ret
     519  */
     520  TEST_DUAL_Z_REV (ptrue_cvt_f32_u32_x_tied1, svfloat32_t, svuint32_t,
     521  		 z0_res = svcvt_f32_u32_x (svptrue_b32 (), z0),
     522  		 z0_res = svcvt_f32_x (svptrue_b32 (), z0))
     523  
     524  /*
     525  ** ptrue_cvt_f32_u32_x_untied:
     526  **	...
     527  **	ptrue	p[0-9]+\.b[^\n]*
     528  **	...
     529  **	ret
     530  */
     531  TEST_DUAL_Z (ptrue_cvt_f32_u32_x_untied, svfloat32_t, svuint32_t,
     532  	     z0 = svcvt_f32_u32_x (svptrue_b32 (), z4),
     533  	     z0 = svcvt_f32_x (svptrue_b32 (), z4))
     534  
     535  /*
     536  ** ptrue_cvt_f32_u64_x_tied1:
     537  **	...
     538  **	ptrue	p[0-9]+\.b[^\n]*
     539  **	...
     540  **	ret
     541  */
     542  TEST_DUAL_Z_REV (ptrue_cvt_f32_u64_x_tied1, svfloat32_t, svuint64_t,
     543  		 z0_res = svcvt_f32_u64_x (svptrue_b64 (), z0),
     544  		 z0_res = svcvt_f32_x (svptrue_b64 (), z0))
     545  
     546  /*
     547  ** ptrue_cvt_f32_u64_x_untied:
     548  **	...
     549  **	ptrue	p[0-9]+\.b[^\n]*
     550  **	...
     551  **	ret
     552  */
     553  TEST_DUAL_Z (ptrue_cvt_f32_u64_x_untied, svfloat32_t, svuint64_t,
     554  	     z0 = svcvt_f32_u64_x (svptrue_b64 (), z4),
     555  	     z0 = svcvt_f32_x (svptrue_b64 (), z4))