Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/gcc.dg/torture/pr94482.c @ 152:2b5abeee2509
update gcc11
author | anatofuz |
---|---|
date | Mon, 25 May 2020 07:50:57 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
145:1830386684a0 | 152:2b5abeee2509 |
---|---|
1 /* { dg-do run } */ | |
2 /* { dg-additional-options "-Wno-psabi -w" } */ | |
3 /* { dg-additional-options "-msse2" { target sse2_runtime } } */ | |
4 | |
5 typedef unsigned V __attribute__ ((__vector_size__ (16))); | |
6 union U | |
7 { | |
8 V j; | |
9 unsigned long long i __attribute__ ((__vector_size__ (16))); | |
10 }; | |
11 | |
12 static inline __attribute__((always_inline)) V | |
13 foo (unsigned long long a) | |
14 { | |
15 union U z = { .j = (V) {} }; | |
16 for (unsigned long i = 0; i < 1; i++) | |
17 z.i[i] = a; | |
18 return z.j; | |
19 } | |
20 | |
21 static inline __attribute__((always_inline)) V | |
22 bar (V a, unsigned long long i, int q) | |
23 { | |
24 union U z = { .j = a }; | |
25 z.i[q] = i; | |
26 return z.j; | |
27 } | |
28 | |
29 int | |
30 main () | |
31 { | |
32 union U z = { .j = bar (foo (1729), 2, 1) }; | |
33 if (z.i[0] != 1729) | |
34 __builtin_abort (); | |
35 return 0; | |
36 } |