(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
sve/
acle/
general/
cnth_pat_1.c
       1  /* { dg-do compile } */
       2  /* { dg-additional-options "-O -msve-vector-bits=256" } */
       3  /* { dg-final { check-function-bodies "**" "" } } */
       4  
       5  #include <arm_sve.h>
       6  
       7  #ifdef __cplusplus
       8  extern "C" {
       9  #endif
      10  
      11  /*
      12  ** cnth_pow2:
      13  **	mov	x0, #?16
      14  **	ret
      15  */
      16  uint64_t cnth_pow2 () { return svcnth_pat (SV_POW2); }
      17  
      18  /*
      19  ** cnth_vl1:
      20  **	mov	x0, #?1
      21  **	ret
      22  */
      23  uint64_t cnth_vl1 () { return svcnth_pat (SV_VL1); }
      24  
      25  /*
      26  ** cnth_vl2:
      27  **	mov	x0, #?2
      28  **	ret
      29  */
      30  uint64_t cnth_vl2 () { return svcnth_pat (SV_VL2); }
      31  
      32  /*
      33  ** cnth_vl3:
      34  **	mov	x0, #?3
      35  **	ret
      36  */
      37  uint64_t cnth_vl3 () { return svcnth_pat (SV_VL3); }
      38  
      39  /*
      40  ** cnth_vl4:
      41  **	mov	x0, #?4
      42  **	ret
      43  */
      44  uint64_t cnth_vl4 () { return svcnth_pat (SV_VL4); }
      45  
      46  /*
      47  ** cnth_vl5:
      48  **	mov	x0, #?5
      49  **	ret
      50  */
      51  uint64_t cnth_vl5 () { return svcnth_pat (SV_VL5); }
      52  
      53  /*
      54  ** cnth_vl6:
      55  **	mov	x0, #?6
      56  **	ret
      57  */
      58  uint64_t cnth_vl6 () { return svcnth_pat (SV_VL6); }
      59  
      60  /*
      61  ** cnth_vl7:
      62  **	mov	x0, #?7
      63  **	ret
      64  */
      65  uint64_t cnth_vl7 () { return svcnth_pat (SV_VL7); }
      66  
      67  /*
      68  ** cnth_vl8:
      69  **	mov	x0, #?8
      70  **	ret
      71  */
      72  uint64_t cnth_vl8 () { return svcnth_pat (SV_VL8); }
      73  
      74  /*
      75  ** cnth_vl16:
      76  **	mov	x0, #?16
      77  **	ret
      78  */
      79  uint64_t cnth_vl16 () { return svcnth_pat (SV_VL16); }
      80  
      81  /*
      82  ** cnth_vl32:
      83  **	mov	x0, #?0
      84  **	ret
      85  */
      86  uint64_t cnth_vl32 () { return svcnth_pat (SV_VL32); }
      87  
      88  /*
      89  ** cnth_vl64:
      90  **	mov	x0, #?0
      91  **	ret
      92  */
      93  uint64_t cnth_vl64 () { return svcnth_pat (SV_VL64); }
      94  
      95  /*
      96  ** cnth_vl128:
      97  **	mov	x0, #?0
      98  **	ret
      99  */
     100  uint64_t cnth_vl128 () { return svcnth_pat (SV_VL128); }
     101  
     102  /*
     103  ** cnth_vl256:
     104  **	mov	x0, #?0
     105  **	ret
     106  */
     107  uint64_t cnth_vl256 () { return svcnth_pat (SV_VL256); }
     108  
     109  /*
     110  ** cnth_mul3:
     111  **	mov	x0, #?15
     112  **	ret
     113  */
     114  uint64_t cnth_mul3 () { return svcnth_pat (SV_MUL3); }
     115  
     116  /*
     117  ** cnth_mul4:
     118  **	mov	x0, #?16
     119  **	ret
     120  */
     121  uint64_t cnth_mul4 () { return svcnth_pat (SV_MUL4); }
     122  
     123  /*
     124  ** cnth_all:
     125  **	mov	x0, #?16
     126  **	ret
     127  */
     128  uint64_t cnth_all () { return svcnth_pat (SV_ALL); }
     129  
     130  #ifdef __cplusplus
     131  }
     132  #endif