1#include <altivec.h>
2extern vector unsigned char u8(void);
3extern vector signed char s8(void);
4extern vector bool char b8(void);
5extern vector unsigned short u16(void);
6extern vector signed short s16(void);
7extern vector bool short b16(void);
8extern vector unsigned int u32(void);
9extern vector signed int s32(void);
10extern vector bool int b32(void);
11extern vector float f32(void);
12extern vector pixel p16(void);
13extern double d(void);
14extern int i(void);
15
16extern void g(vector unsigned char, ...);
17
18void f()
19{
20  int i1l = i();
21  vector unsigned char u8l = u8();
22  vector signed char s8l = s8();
23  vector bool char b8l = b8();
24  int i2l = i();
25  vector unsigned short u16l = u16();
26  vector signed short s16l = s16();
27  vector bool short b16l = b16();
28  int i3l = i();
29  vector unsigned int u32l = u32();
30  vector signed int s32l = s32();
31  vector bool int b32l = b32();
32  double d1l = d();
33  vector float f32l = f32();
34  vector pixel p16l = p16();
35  double d2l = d();
36  vector unsigned char u8lx = u8();
37  vector signed char s8lx = s8();
38  vector bool char b8lx = b8();
39  vector unsigned short u16lx = u16();
40  vector signed short s16lx = s16();
41  vector bool short b16lx = b16();
42  vector unsigned int u32lx = u32();
43  vector signed int s32lx = s32();
44  vector bool int b32lx = b32();
45  vector float f32lx = f32();
46  vector pixel p16lx = p16();
47
48  if (i1l)
49    g(u8l, s8l, b8l, u16l, s16l, b16l, u32l, s32l, b32l, f32l, p16l,
50      u8lx, s8lx, b8lx, u16lx, s16lx, b16lx, u32lx, s32lx, b32lx, f32lx, p16lx,
51      i1l, i2l, i3l, d1l, d2l);
52  g(u8l, i1l, i2l, i3l, d1l, d2l);
53}
54
55double
56d(void)
57{
58  static double zero;
59  return zero;
60}
61
62int
63i(void)
64{
65  static int non_zero;
66  return ++non_zero;
67}
68
69vector unsigned char
70u8(void)
71{
72  static vector unsigned char zero;
73  return zero;
74}
75
76vector signed char
77s8(void)
78{
79  static vector signed char zero;
80  return zero;
81}
82
83vector bool char
84b8(void)
85{
86  static vector bool char zero;
87  return zero;
88}
89
90vector unsigned short
91u16(void)
92{
93  static vector unsigned short zero;
94  return zero;
95}
96
97vector signed short
98s16(void)
99{
100  static vector signed short zero;
101  return zero;
102}
103
104vector bool short
105b16(void)
106{
107  static vector bool short zero;
108  return zero;
109}
110
111vector unsigned int
112u32(void)
113{
114  static vector unsigned int zero;
115  return zero;
116}
117
118vector signed int
119s32(void)
120{
121  static vector signed int zero;
122  return zero;
123}
124
125vector bool int
126b32(void)
127{
128  static vector bool int zero;
129  return zero;
130}
131
132vector float
133f32(void)
134{
135  static vector float zero;
136  return zero;
137}
138
139vector pixel
140p16(void)
141{
142  static vector pixel zero;
143  return zero;
144}
145
146void
147g(vector unsigned char a, ...)
148{
149}
150
151int main()
152{
153  f();
154  return 0;
155}
156