]>
Commit | Line | Data |
---|---|---|
b8923037 | 1 | /* { dg-do compile } */ |
87cb9423 | 2 | /* { dg-options "-O3 -mzarch -march=z13" } */ |
b8923037 AK |
3 | |
4 | /* The user alignment ends up in TYPE_ALIGN of the type of the | |
5 | VAR_DECL. */ | |
6 | ||
7 | typedef int __attribute__((vector_size(16),aligned(4))) v4si_4; | |
8 | typedef int __attribute__((vector_size(16),aligned(8))) v4si_8; | |
9 | typedef int __attribute__((vector_size(16),aligned(16))) v4si_16; | |
10 | typedef int __attribute__((vector_size(16),aligned(32))) v4si_32; | |
11 | ||
12 | v4si_4 a4; | |
13 | v4si_8 a8; | |
14 | v4si_16 a16; | |
15 | v4si_32 a32; | |
16 | ||
17 | void | |
18 | foo (v4si_8 a) | |
19 | { | |
20 | a4 += a; /* vl ... vst ... */ | |
21 | a8 += a; /* vl ...,3 vst ...,3 */ | |
22 | a16 += a; /* vl ...,4 vst ...,4 */ | |
23 | a32 += a; /* vl ...,4 vst ...,4 */ | |
24 | } | |
25 | ||
26 | /* { dg-final { scan-assembler-times "vl\t%v\[0-9\]*,\[0-9\]*\\(%r\[0-9\]*\\),3\n" 1 } } */ | |
27 | /* { dg-final { scan-assembler-times "vl\t%v\[0-9\]*,\[0-9\]*\\(%r\[0-9\]*\\),4\n" 2 } } */ | |
28 | /* { dg-final { scan-assembler-times "vst\t%v\[0-9\]*,\[0-9\]*\\(%r\[0-9\]*\\),3\n" 1 } } */ | |
29 | /* { dg-final { scan-assembler-times "vst\t%v\[0-9\]*,\[0-9\]*\\(%r\[0-9\]*\\),4" 2 } } */ |