summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr94784.c
blob: df6972f64aaee438bc578f145ff90729d1b3c831 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* { dg-do compile { target aarch64*-*-* } } */
/* { dg-options "-O2 -ftree-slp-vectorize -march=armv8.2-a+sve -msve-vector-bits=256" } */

typedef short __attribute__((vector_size (8))) v4hi;

typedef union U4HI { v4hi v; short a[4]; } u4hi;

short a[4];

void pass_v4hi (v4hi v) {
    int j;
    u4hi u;
    u.v = v;
    for (j = 0; j < 4; j++)
      a[j] = u.a[j];
};