(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
compat/
vector-defs.h
       1  /* This includes all of the vector modes that are recognized by
       2     c_common_type_for_mode.  */
       3  
       4  typedef int __attribute__((mode(QI))) qi;
       5  typedef int __attribute__((mode(HI))) hi;
       6  typedef int __attribute__((mode(SI))) si;
       7  typedef int __attribute__((mode(DI))) di;
       8  typedef float __attribute__((mode(SF))) sf;
       9  #if ((__SIZEOF_DOUBLE__ >= 8) || (__SIZEOF_LONG_DOUBLE__ >= 8))
      10  typedef float __attribute__((mode(DF))) df;
      11  #else
      12  typedef float __attribute__((mode(SF))) df;
      13  #endif
      14  
      15  #if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 5)
      16  
      17  typedef qi __attribute__((vector_size (8))) v8qi;
      18  typedef qi __attribute__((vector_size (16))) v16qi;
      19  
      20  typedef hi __attribute__((vector_size (4))) v2hi;
      21  typedef hi __attribute__((vector_size (8))) v4hi;
      22  typedef hi __attribute__((vector_size (16))) v8hi;
      23  
      24  typedef si __attribute__((vector_size (8))) v2si;
      25  typedef si __attribute__((vector_size (16))) v4si;
      26  
      27  typedef di __attribute__((vector_size (8))) v1di;
      28  typedef di __attribute__((vector_size (16))) v2di;
      29  
      30  typedef sf __attribute__((vector_size (8))) v2sf;
      31  typedef sf __attribute__((vector_size (16))) v4sf;
      32  typedef sf __attribute__((vector_size (64))) v16sf;
      33  
      34  typedef df __attribute__((vector_size (16))) v2df;
      35  
      36  #else
      37  
      38  typedef int __attribute__((mode(V8QI))) v8qi;
      39  typedef int __attribute__((mode(V16QI))) v16qi;
      40  
      41  typedef int __attribute__((mode(V2HI))) v2hi;
      42  typedef int __attribute__((mode(V4HI))) v4hi;
      43  typedef int __attribute__((mode(V8HI))) v8hi;
      44  
      45  typedef int __attribute__((mode(V2SI))) v2si;
      46  typedef int __attribute__((mode(V4SI))) v4si;
      47  
      48  typedef int __attribute__((mode(V1DI))) v1di;
      49  typedef int __attribute__((mode(V2DI))) v2di;
      50  
      51  typedef float __attribute__((mode(V2SF))) v2sf;
      52  typedef float __attribute__((mode(V4SF))) v4sf;
      53  typedef float __attribute__((mode(V16SF))) v16sf;
      54  
      55  typedef float __attribute__((mode(V2DF))) v2df;
      56  
      57  #endif
      58  
      59  typedef qi __attribute__((vector_size (32))) v32qi;
      60  typedef hi __attribute__((vector_size (32))) v16hi;
      61  typedef si __attribute__((vector_size (32))) v8si;
      62  typedef di __attribute__((vector_size (32))) v4di;
      63  typedef sf __attribute__((vector_size (32))) v8sf;
      64  typedef df __attribute__((vector_size (32))) v4df;
      65  
      66  typedef union U32QI { v32qi v; qi a[32]; } u32qi;
      67  typedef union U16HI { v16hi v; hi a[16]; } u16hi;
      68  typedef union U8SI { v8si v; si a[8]; } u8si;
      69  typedef union U4DI { v4di v; di a[4]; } u4di;
      70  typedef union U8SF { v8sf v; sf a[8]; } u8sf;
      71  typedef union U4DF { v4df v; df a[4]; } u4df;
      72  
      73  typedef union U8QI { v8qi v; qi a[8]; } u8qi;
      74  typedef union U16QI { v16qi v; qi a[16]; } u16qi;
      75  
      76  typedef union U2HI { v2hi v; hi a[2]; } u2hi;
      77  typedef union U4HI { v4hi v; hi a[4]; } u4hi;
      78  typedef union U8HI { v8hi v; hi a[8]; } u8hi;
      79  
      80  typedef union U2SI { v2si v; si a[2]; } u2si;
      81  typedef union U4SI { v4si v; si a[4]; } u4si;
      82  
      83  typedef union U1DI { v1di v; di a[1]; } u1di;
      84  typedef union U2DI { v2di v; di a[2]; } u2di;
      85  
      86  typedef union U2SF { v2sf v; sf a[2]; } u2sf;
      87  typedef union U4SF { v4sf v; sf a[4]; } u4sf;
      88  typedef union U16SF { v16sf v; sf a[16]; } u16sf;
      89  
      90  typedef union U2DF { v2df v; df a[2]; } u2df;