1651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// REQUIRES: powerpc-registered-target
2dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner// RUN: %clang_cc1 -faltivec -triple powerpc-unknown-unknown -emit-llvm %s -o - | FileCheck %s
3ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// RUN: %clang_cc1 -faltivec -triple powerpc64-unknown-unknown -emit-llvm %s -o - | FileCheck %s
4ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// RUN: %clang_cc1 -faltivec -triple powerpc64le-unknown-unknown -emit-llvm %s -o - | FileCheck %s -check-prefix=CHECK-LE
5dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
605e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsevvector bool char vbc = { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 };
735b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector signed char vsc = { 1, -2, 3, -4, 5, -6, 7, -8, 9, -10, 11, -12, 13, -14, 15, -16 };
835b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector unsigned char vuc = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 };
905e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsevvector bool short vbs = { 1, 0, 1, 0, 1, 0, 1, 0 };
1035b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector short vs = { -1, 2, -3, 4, -5, 6, -7, 8 };
1135b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector unsigned short vus = { 1, 2, 3, 4, 5, 6, 7, 8 };
12f54dbfdd16c053d6f305a4c48cb5aba0fe168f2dAnton Yartsevvector pixel vp = { 1, 2, 3, 4, 5, 6, 7, 8 };
1305e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsevvector bool int vbi = { 1, 0, 1, 0 };
1435b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector int vi = { -1, 2, -3, 4 };
1535b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector unsigned int vui = { 1, 2, 3, 4 };
1635b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector float vf = { -1.5, 2.5, -3.5, 4.5 };
17dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1805e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsevvector bool char res_vbc;
1935b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector signed char res_vsc;
2035b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector unsigned char res_vuc;
2105e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsevvector bool short res_vbs;
2235b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector short res_vs;
2335b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector unsigned short res_vus;
2435b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector pixel res_vp;
2505e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsevvector bool int res_vbi;
2635b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector int res_vi;
2735b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector unsigned int res_vui;
2835b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnervector float res_vf;
29dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
3035b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnersigned char param_sc;
3135b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnerunsigned char param_uc;
3235b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnershort param_s;
3335b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnerunsigned short param_us;
3435b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnerint param_i;
3535b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnerunsigned int param_ui;
3635b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnerfloat param_f;
374d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
3844270d6abff30415cdd873164823f48a45be7f8cAnton Yartsevint res_sc;
3944270d6abff30415cdd873164823f48a45be7f8cAnton Yartsevint res_uc;
4044270d6abff30415cdd873164823f48a45be7f8cAnton Yartsevint res_s;
4144270d6abff30415cdd873164823f48a45be7f8cAnton Yartsevint res_us;
4235b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattnerint res_i;
4344270d6abff30415cdd873164823f48a45be7f8cAnton Yartsevint res_ui;
4444270d6abff30415cdd873164823f48a45be7f8cAnton Yartsevint res_f;
4535b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattner
4693ab6bf534fb6c26563c00f28a8fc5581bb71dfdStephen Lin// CHECK-LABEL: define void @test1
4705e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsevvoid test1() {
48dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
49dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner  /* vec_abs */
50ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vsc = vec_abs(vsc);
51ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8> zeroinitializer
52ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsb
53ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8> zeroinitializer
54ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsb
55ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
56ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vs = vec_abs(vs);
57ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16> zeroinitializer
58ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsh
59ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16> zeroinitializer
60ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsh
61ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
62ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vi = vec_abs(vi);
63ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32> zeroinitializer
64ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsw
65ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32> zeroinitializer
66ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsw
67ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
68ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vf = vec_abs(vf);
69ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
70ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
71dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
72ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_abs */
73ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vsc = vec_abss(vsc);
74ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsbs
75ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsb
76ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsbs
77ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsb
78ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
79ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vs = vec_abss(vs);
80ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubshs
81ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsh
82ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubshs
83ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsh
84ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
85ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vi = vec_abss(vi);
86ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsws
87ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsw
88ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsws
89ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsw
90dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
91ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /*  vec_add */
92ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_add(vsc, vsc);
93ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
94ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
95dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
96ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_add(vbc, vsc);
97ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
98ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
99dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
100ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_add(vsc, vbc);
101ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
102ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
103dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
104ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_add(vuc, vuc);
105ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
106ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
107dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
108ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_add(vbc, vuc);
109ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
110ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
111dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
112ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_add(vuc, vbc);
113ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
114ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
115ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
116ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_add(vs, vs);
117ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
118ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
119ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
120ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_add(vbs, vs);
121ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
122ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
123ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
124ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_add(vs, vbs);
125ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
126ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
127ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
128ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_add(vus, vus);
129ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
130ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
131ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
132ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_add(vbs, vus);
133ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
134ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
135ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
136ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_add(vus, vbs);
137ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
138ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
139ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
140ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_add(vi, vi);
141ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
142ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
143ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
144ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_add(vbi, vi);
145ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
146ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
147ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
148ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_add(vi, vbi);
149ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
150ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
151ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
152ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_add(vui, vui);
153ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
154ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
155ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
156ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_add(vbi, vui);
157ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
158ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
159ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
160ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_add(vui, vbi);
161ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
162ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
163ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
164ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_add(vf, vf);
165ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: fadd <4 x float>
166ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: fadd <4 x float>
167ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
168ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vaddubm(vsc, vsc);
169ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
170ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
171ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
172ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vaddubm(vbc, vsc);
173ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
174ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
175ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
176ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vaddubm(vsc, vbc);
177ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
178ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
179ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
180ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vaddubm(vuc, vuc);
181ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
182ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
183ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
184ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vaddubm(vbc, vuc);
185ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
186ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
187ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
188ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vaddubm(vuc, vbc);
189ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <16 x i8>
190ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <16 x i8>
191ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
192ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vadduhm(vs, vs);
193ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
194ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
195ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
196ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vadduhm(vbs, vs);
197ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
198ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
199ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
200ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vadduhm(vs, vbs);
201ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
202ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
203ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
204ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vadduhm(vus, vus);
205ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
206ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
207ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
208ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vadduhm(vbs, vus);
209ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
210ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
211ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
212ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vadduhm(vus, vbs);
213ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
214ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
215ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
216ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vadduwm(vi, vi);
217ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
218ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
219ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
220ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vadduwm(vbi, vi);
221ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
222ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
223ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
224ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vadduwm(vi, vbi);
225ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
226ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
227ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
228ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vadduwm(vui, vui);
229ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
230ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
231ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
232ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vadduwm(vbi, vui);
233ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
234ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
235ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
236ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vadduwm(vui, vbi);
237ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <4 x i32>
238ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <4 x i32>
239ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
240ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vaddfp(vf, vf);
241ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: fadd <4 x float>
242ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: fadd <4 x float>
243dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
244dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner  /* vec_addc */
245ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_addc(vui, vui);
246ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddcuw
247ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddcuw
248ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
249ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vaddcuw(vui, vui);
250ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddcuw
251ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddcuw
252dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
253dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner  /* vec_adds */
254ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_adds(vsc, vsc);
255ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsbs
256ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsbs
257dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
258ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_adds(vbc, vsc);
259ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsbs
260ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsbs
261dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
262ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_adds(vsc, vbc);
263ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsbs
264ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsbs
265ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
266ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_adds(vuc, vuc);
267ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddubs
268ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddubs
269ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
270ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_adds(vbc, vuc);
271ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddubs
272ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddubs
273ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
274ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_adds(vuc, vbc);
275ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddubs
276ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddubs
277ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
278ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_adds(vs, vs);
279ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddshs
280ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddshs
281ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
282ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_adds(vbs, vs);
283ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddshs
284ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddshs
285ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
286ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_adds(vs, vbs);
287ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddshs
288ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddshs
289ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
290ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_adds(vus, vus);
291ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduhs
292ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduhs
293ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
294ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_adds(vbs, vus);
295ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduhs
296ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduhs
297ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
298ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_adds(vus, vbs);
299ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduhs
300ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduhs
301ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
302ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_adds(vi, vi);
303ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsws
304ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsws
305ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
306ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_adds(vbi, vi);
307ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsws
308ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsws
309ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
310ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_adds(vi, vbi);
311ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsws
312ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsws
313ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
314ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_adds(vui, vui);
315ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduws
316ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduws
317ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
318ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_adds(vbi, vui);
319ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduws
320ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduws
321ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
322ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_adds(vui, vbi);
323ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduws
324ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduws
325ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
326ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vaddsbs(vsc, vsc);
327ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsbs
328ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsbs
329ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
330ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vaddsbs(vbc, vsc);
331ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsbs
332ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsbs
333ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
334ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vaddsbs(vsc, vbc);
335ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsbs
336ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsbs
337ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
338ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vaddubs(vuc, vuc);
339ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddubs
340ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddubs
341ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
342ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vaddubs(vbc, vuc);
343ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddubs
344ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddubs
345ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
346ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vaddubs(vuc, vbc);
347ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddubs
348ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddubs
349ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
350ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vaddshs(vs, vs);
351ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddshs
352ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddshs
353ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
354ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vaddshs(vbs, vs);
355ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddshs
356ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddshs
357ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
358ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vaddshs(vs, vbs);
359ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddshs
360ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddshs
361ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
362ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vadduhs(vus, vus);
363ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduhs
364ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduhs
3654d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
366ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vadduhs(vbs, vus);
367ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduhs
368ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduhs
36905e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
370ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vadduhs(vus, vbs);
371ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduhs
372ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduhs
37305e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
374ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vaddsws(vi, vi);
375ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsws
376ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsws
3774d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
378ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vaddsws(vbi, vi);
379ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsws
380ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsws
38105e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
382ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vaddsws(vi, vbi);
383ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vaddsws
384ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vaddsws
38505e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
386ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vadduws(vui, vui);
387ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduws
388ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduws
38905e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
390ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vadduws(vbi, vui);
391ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduws
392ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduws
3934d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
394ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vadduws(vui, vbi);
395ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vadduws
396ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vadduws
39705e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
398ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_and */
399ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_and(vsc, vsc);
400ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
401ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
402ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
403ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_and(vbc, vsc);
404ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
405ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
406ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
407ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_and(vsc, vbc);
408ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
409ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
410ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
411ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_and(vuc, vuc);
412ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
413ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
41405e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
415ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_and(vbc, vuc);
416ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
417ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
4184d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
419ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_and(vuc, vbc);
420ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
421ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
42205e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
423ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_and(vbc, vbc);
424ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
425ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
42605e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
427ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_and(vs, vs);
428ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
429ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
43005e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
431ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_and(vbs, vs);
432ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
433ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
4344d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
435ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_and(vs, vbs);
436ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
437ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
43805e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
439ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_and(vus, vus);
440ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
441ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
44205e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
443ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_and(vbs, vus);
444ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
445ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
4464d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
447ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_and(vus, vbs);
448ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
449ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
45005e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
451ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_and(vbs, vbs);
452ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
453ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
45405e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
455ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_and(vi, vi);
456ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
457ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
4584d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
459ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_and(vbi, vi);
460ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
461ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-le: and <4 x i32>
46205e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
463ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_and(vi, vbi);
464ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
465ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
46605e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
467ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_and(vui, vui);
468ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
469ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
4704d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
471ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_and(vbi, vui);
472ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
473ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
47405e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
475ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_and(vui, vbi);
476ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
477ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
47805e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
479ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_and(vbi, vbi);
480ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
481ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
4824d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
483ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vand(vsc, vsc);
484ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
485ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
48605e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
487ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vand(vbc, vsc);
488ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
489ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
49005e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
491ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vand(vsc, vbc);
492ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
493ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
49405e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
495ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vand(vuc, vuc);
496ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
497ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
4984d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
499ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vand(vbc, vuc);
500ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
501ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
50205e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
503ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vand(vuc, vbc);
504ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
505ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
50605e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
507ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vand(vbc, vbc);
508ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
509ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
5104d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
511ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vand(vs, vs);
512ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
513ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
51405e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
515ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vand(vbs, vs);
516ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
517ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
51805e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
519ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vand(vs, vbs);
520ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
521ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
52205e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
523ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vand(vus, vus);
524ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
525ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
5264d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
527ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vand(vbs, vus);
528ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
529ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
53005e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
531ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vand(vus, vbs);
532ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
533ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
53405e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
535ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vand(vbs, vbs);
536ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
537ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
5384d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
539ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vand(vi, vi);
540ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
541ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
54205e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
543ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vand(vbi, vi);
544ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
545ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
54605e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
547ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vand(vi, vbi);
548ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
549ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
55005e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
551ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vand(vui, vui);
552ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
553ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
55405e3555b21d7fe123a57de5b26dbf4600376e776Anton Yartsev
555ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vand(vbi, vui);
556ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
557ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
558ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
559ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vand(vui, vbi);
560ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
561ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
562ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
563ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vand(vbi, vbi);
564ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
565ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
566ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
567ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_andc */
568ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_andc(vsc, vsc);
569ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
570ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
571ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
572ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
573ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
574ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_andc(vbc, vsc);
575ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
576ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
577ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
578ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
579ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
580ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_andc(vsc, vbc);
581ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
582ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
583ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
584ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
585ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
586ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_andc(vuc, vuc);
587ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
588ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
589ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
590ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
591ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
592ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_andc(vbc, vuc);
593ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
594ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
595ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
596ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
597ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
598ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_andc(vuc, vbc);
599ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
600ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
601ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
602ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_andc(vbc, vbc);
603ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
604ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
605ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
606ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
607ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
608ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_andc(vs, vs);
609ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
610ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
611ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
612ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
613ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
614ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_andc(vbs, vs);
615ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
616ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
617ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
618ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
619ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
620ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_andc(vs, vbs);
621ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
622ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
623ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
624ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
625ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
626ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_andc(vus, vus);
627ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
628ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
629ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
630ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
631ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
632ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_andc(vbs, vus);
633ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
634ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
635ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
636ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
637ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
638ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_andc(vus, vbs);
639ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
640ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
641ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
642ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
643ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
644ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_andc(vbs, vbs);
645ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
646ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
647ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
648ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
649ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
650ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_andc(vi, vi);
651ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
652ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
653ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
654ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
655ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
656ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_andc(vbi, vi);
657ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
658ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
659ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
660ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
661ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
662ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_andc(vi, vbi);
663ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
664ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
665ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
666ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
667ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
668ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_andc(vui, vui);
669ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
670ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
671ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
672ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
673ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
674ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_andc(vbi, vui);
675ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
676ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
677ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
678ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
679ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
680ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_andc(vui, vbi);
681ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
682ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
683ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
684ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
685ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
686ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_andc(vf, vf);
687ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
688ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
689ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
690ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
691ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
692ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_andc(vbi, vf);
693ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
694ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
695ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
696ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
697ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
698ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_andc(vf, vbi);
699ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
700ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
701ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
702ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
703ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
704ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vandc(vsc, vsc);
705ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
706ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
707ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
708ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
709ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
710ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vandc(vbc, vsc);
711ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
712ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
713ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
714ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
715ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
716ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vandc(vsc, vbc);
717ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
718ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
719ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
720ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
721ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
722ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vandc(vuc, vuc);
723ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
724ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
725ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
726ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
727ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
728ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vandc(vbc, vuc);
729ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
730ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
731ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
732ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
733ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
734ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vandc(vuc, vbc);
735ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
736ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
737ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
738ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
739ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
740ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vandc(vbc, vbc);
741ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
742ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
743ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
744ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
745ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
746ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vandc(vs, vs);
747ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
748ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
749ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
750ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
751ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
752ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vandc(vbs, vs);
753ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
754ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
755ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
756ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
757ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
758ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vandc(vs, vbs);
759ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
760ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
761ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
762ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
763ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
764ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vandc(vus, vus);
765ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
766ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
767ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
768ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
769ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
770ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vandc(vbs, vus);
771ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
772ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
773ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
774ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
775ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
776ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vandc(vus, vbs);
777ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
778ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
779ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
780ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
781ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
782ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vandc(vbs, vbs);
783ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
784ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
785ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
786ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
787ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
788ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vandc(vi, vi);
789ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
790ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
791ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
792ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
793ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
794ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vandc(vbi, vi);
795ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
796ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
797ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
798ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
799ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
800ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vandc(vi, vbi);
801ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
802ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
803ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
804ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
805ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
806ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vandc(vui, vui);
807ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
808ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
809ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
810ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
811ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
812ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vandc(vbi, vui);
813ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
814ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
815ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
816ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
817ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
818ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vandc(vui, vbi);
819ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
820ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
821ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
822ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
823ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
824ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vandc(vf, vf);
825ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
826ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
827ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
828ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
829ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
830ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vandc(vbi, vf);
831ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
832ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
833ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
834ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
835ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
836ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vandc(vf, vbi);
837ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
838ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
839ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
840ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
841a2fc0f54d69461795433d42c46de337850be15cdAnton Yartsev
84235b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattner}
843dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
84493ab6bf534fb6c26563c00f28a8fc5581bb71dfdStephen Lin// CHECK-LABEL: define void @test2
845a2fc0f54d69461795433d42c46de337850be15cdAnton Yartsevvoid test2() {
846dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner  /* vec_avg */
847ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_avg(vsc, vsc);
848ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavgsb
849ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavgsb
850ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
851ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_avg(vuc, vuc);
852ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavgub
853ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavgub
854ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
855ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_avg(vs, vs);
856ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavgsh
857ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavgsh
858ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
859ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_avg(vus, vus);
860ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavguh
861ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavguh
862ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
863ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_avg(vi, vi);
864ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavgsw
865ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavgsw
866ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
867ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_avg(vui, vui);
868ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavguw
869ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavguw
870ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
871ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vavgsb(vsc, vsc);
872ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavgsb
873ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavgsb
874ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
875ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vavgub(vuc, vuc);
876ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavgub
877ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavgub
878ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
879ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vavgsh(vs, vs);
880ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavgsh
881ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavgsh
882ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
883ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vavguh(vus, vus);
884ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavguh
885ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavguh
886ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
887ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vavgsw(vi, vi);
888ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavgsw
889ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavgsw
890ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
891ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vavguw(vui, vui);
892ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vavguw
893ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vavguw
894dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
8954d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_ceil */
896ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_ceil(vf);
897ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrfip
898ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrfip
899ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
900ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vrfip(vf);
901ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrfip
902ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrfip
903dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
904dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner  /* vec_cmpb */
905ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi = vec_cmpb(vf, vf);
906ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpbfp
907ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpbfp
908ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
909ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi = vec_vcmpbfp(vf, vf);
910ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpbfp
911ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpbfp
912dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
913dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner  /* vec_cmpeq */
914ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_cmpeq(vsc, vsc);
915ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb
916ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb
917ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
918ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_cmpeq(vuc, vuc);
919ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb
920ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb
921ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
922ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_cmpeq(vs, vs);
923ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh
924ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh
925ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
926ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_cmpeq(vus, vus);
927ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh
928ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh
929ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
930ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmpeq(vi, vi);
931ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw
932ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw
933ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
934ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmpeq(vui, vui);
935ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw
936ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw
937ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
938ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmpeq(vf, vf);
939ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp
940ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp
941dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
942dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner  /* vec_cmpge */
943ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmpge(vf, vf);
944ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp
945ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp
946ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
947ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vcmpgefp(vf, vf);
948ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp
949ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp
95035b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattner}
951dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
95293ab6bf534fb6c26563c00f28a8fc5581bb71dfdStephen Lin// CHECK-LABEL: define void @test5
953a2fc0f54d69461795433d42c46de337850be15cdAnton Yartsevvoid test5() {
954ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
955dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner  /* vec_cmpgt */
956ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_cmpgt(vsc, vsc);
957ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb
958ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb
959ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
960ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_cmpgt(vuc, vuc);
961ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub
962ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub
963ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
964ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_cmpgt(vs, vs);
965ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh
966ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh
967ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
968ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_cmpgt(vus, vus);
969ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh
970ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh
971ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
972ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmpgt(vi, vi);
973ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw
974ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw
975ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
976ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmpgt(vui, vui);
977ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw
978ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw
979ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
980ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmpgt(vf, vf);
981ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp
982ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp
983ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
984ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vcmpgtsb(vsc, vsc);
985ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb
986ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb
987ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
988ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vcmpgtub(vuc, vuc);
989ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub
990ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub
991ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
992ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vcmpgtsh(vs, vs);
993ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh
994ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh
995ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
996ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vcmpgtuh(vus, vus);
997ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh
998ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh
999ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1000ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vcmpgtsw(vi, vi);
1001ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw
1002ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw
1003ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1004ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vcmpgtuw(vui, vui);
1005ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw
1006ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw
1007ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1008ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vcmpgtfp(vf, vf);
1009ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp
1010ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp
1011dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1012dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner  /* vec_cmple */
1013ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmple(vf, vf);
1014ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp
1015ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp
101635b21b884e5c3447a52a74d7ffaba966b07ac81fChris Lattner}
1017dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
101893ab6bf534fb6c26563c00f28a8fc5581bb71dfdStephen Lin// CHECK-LABEL: define void @test6
1019a2fc0f54d69461795433d42c46de337850be15cdAnton Yartsevvoid test6() {
1020dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner  /* vec_cmplt */
1021ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_cmplt(vsc, vsc);
1022ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb
1023ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb
1024ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1025ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_cmplt(vuc, vuc);
1026ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub
1027ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub
1028ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1029ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_cmplt(vs, vs);
1030ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh
1031ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh
1032ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1033ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_cmplt(vus, vus);
1034ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh
1035ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh
1036ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1037ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmplt(vi, vi);
1038ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw
1039ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw
1040ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1041ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmplt(vui, vui);
1042ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw
1043ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw
1044ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1045ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_cmplt(vf, vf);
1046ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp
1047ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp
10484d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
10494d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_ctf */
1050ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_ctf(vi, param_i);
1051ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcfsx
1052ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcfsx
1053ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1054ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_ctf(vui, 0);
1055ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcfux
1056ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcfux
1057ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1058ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vcfsx(vi, 0);
1059ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcfsx
1060ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcfsx
1061ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1062ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vcfux(vui, 0);
1063ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcfux
1064ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcfux
10654d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
10664d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_cts */
1067ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi = vec_cts(vf, 0);
1068ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vctsxs
1069ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vctsxs
1070ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1071ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi = vec_vctsxs(vf, 0);
1072ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vctsxs
1073ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vctsxs
10744d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
10754d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_ctu */
1076ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_ctu(vf, 0);
1077ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vctuxs
1078ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vctuxs
1079ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1080ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vctuxs(vf, 0);
1081ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vctuxs
1082ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vctuxs
10834d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
10844d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_dss */
1085ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_dss(param_i);
1086ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.dss
1087ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.dss
10884d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
10894d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_dssall */
1090ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_dssall();
1091ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.dssall
1092ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.dssall
10934d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
10944d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_dst */
1095ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_dst(&vsc, 0, 0);
1096ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.dst
1097ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.dst
10984d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
10994d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_dstst */
1100ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_dstst(&vs, 0, 0);
1101ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.dstst
1102ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.dstst
11034d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
11044d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_dststt */
1105ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_dststt(&param_i, 0, 0);
1106ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.dststt
1107ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.dststt
11084d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
11094d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_dstt */
1110ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_dstt(&vf, 0, 0);
1111ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.dstt
1112ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.dstt
11134d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
11144d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_expte */
1115ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_expte(vf);
1116ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vexptefp
1117ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vexptefp
1118ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1119ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vexptefp(vf);
1120ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vexptefp
1121ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vexptefp
11224d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
11234d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_floor */
1124ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_floor(vf);
1125ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrfim
1126ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrfim
1127ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1128ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vrfim(vf);
1129ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrfim
1130ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrfim
11314d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
11324d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov  /* vec_ld */
1133ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_ld(0, &vsc);
1134ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1135ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11364d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1137ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_ld(0, &param_sc);
1138ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1139ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11404d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1141ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_ld(0, &vuc);
1142ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1143ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11444d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1145ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_ld(0, &param_uc);
1146ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1147ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11484d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1149ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_ld(0, &vbc);
1150ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1151ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11524d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1153ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_ld(0, &vs);
1154ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1155ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11564d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1157ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_ld(0, &param_s);
1158ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1159ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11604d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1161ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_ld(0, &vus);
1162ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1163ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
1164dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1165ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_ld(0, &param_us);
1166ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1167ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11684d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1169ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_ld(0, &vbs);
1170ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1171ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11724d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1173ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_ld(0, &vp);
1174ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1175ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
1176dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1177ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_ld(0, &vi);
1178ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1179ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
1180dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1181ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_ld(0, &param_i);
1182ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1183ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11844d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1185ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_ld(0, &vui);
1186ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1187ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11884d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1189ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_ld(0, &param_ui);
1190ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1191ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11924d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1193ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_ld(0, &vbi);
1194ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1195ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
11964d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1197ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_ld(0, &vf);
1198ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1199ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12004d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1201ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_ld(0, &param_f);
1202ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1203ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12044d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1205ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvx(0, &vsc);
1206ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1207ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
1208dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1209ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvx(0, &param_sc);
1210ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1211ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
1212dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1213ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvx(0, &vuc);
1214ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1215ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12164d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1217ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvx(0, &param_uc);
1218ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1219ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12204d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1221ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_lvx(0, &vbc);
1222ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1223ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12244d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1225ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvx(0, &vs);
1226ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1227ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12284d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1229ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvx(0, &param_s);
1230ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1231ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12324d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1233ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvx(0, &vus);
1234ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1235ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
1236a2fc0f54d69461795433d42c46de337850be15cdAnton Yartsev
1237ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvx(0, &param_us);
1238ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1239ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12404d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1241ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_lvx(0, &vbs);
1242ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1243ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12444d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1245ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_lvx(0, &vp);
1246ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1247ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
1248a2fc0f54d69461795433d42c46de337850be15cdAnton Yartsev
1249ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvx(0, &vi);
1250ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1251ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12524d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1253ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvx(0, &param_i);
1254ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1255ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12564d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1257ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvx(0, &vui);
1258ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1259ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
1260a2fc0f54d69461795433d42c46de337850be15cdAnton Yartsev
1261ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvx(0, &param_ui);
1262ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1263ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12644d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1265ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_lvx(0, &vbi);
1266ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1267ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12684d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1269ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_lvx(0, &vf);
1270ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1271ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
12724d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1273ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_lvx(0, &param_f);
1274ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
1275ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
1276a2fc0f54d69461795433d42c46de337850be15cdAnton Yartsev
1277ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_lde */
1278ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lde(0, &param_sc);
1279ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvebx
1280ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvebx
12814d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1282ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lde(0, &param_uc);
1283ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvebx
1284ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvebx
12854d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1286ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lde(0, &param_s);
1287ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvehx
1288ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvehx
1289a2fc0f54d69461795433d42c46de337850be15cdAnton Yartsev
1290ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lde(0, &param_us);
1291ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvehx
1292ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvehx
1293dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1294ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lde(0, &param_i);
1295ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvewx
1296ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvewx
12974d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1298ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lde(0, &param_ui);
1299ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvewx
1300ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvewx
1301a2fc0f54d69461795433d42c46de337850be15cdAnton Yartsev
1302ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_lde(0, &param_f);
1303ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvewx
1304ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvewx
13054d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1306ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvebx(0, &param_sc);
1307ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvebx
1308ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvebx
13094d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1310ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvebx(0, &param_uc);
1311ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvebx
1312ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvebx
13134d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1314ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvehx(0, &param_s);
1315ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvehx
1316ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvehx
13174d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1318ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvehx(0, &param_us);
1319ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvehx
1320ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvehx
13214d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1322ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvewx(0, &param_i);
1323ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvewx
1324ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvewx
13254d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1326ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvewx(0, &param_ui);
1327ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvewx
1328ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvewx
13294d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1330ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_lvewx(0, &param_f);
1331ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvewx
1332ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvewx
13334d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1334ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_ldl */
1335ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_ldl(0, &vsc);
1336ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1337ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13384d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1339ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_ldl(0, &param_sc);
1340ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1341ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13424d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1343ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_ldl(0, &vuc);
1344ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1345ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13464d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1347ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_ldl(0, &param_uc);
1348ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1349ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13504d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1351ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_ldl(0, &vbc);
1352ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1353ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13544d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1355ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_ldl(0, &vs);
1356ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1357ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13584d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1359ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_ldl(0, &param_s);
1360ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1361ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13624d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1363ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_ldl(0, &vus);
1364ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1365ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13664d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1367ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_ldl(0, &param_us);
1368ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1369ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13704d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1371ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_ldl(0, &vbs);
1372ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1373ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13744d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1375ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_ldl(0, &vp);
1376ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1377ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13784d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1379ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_ldl(0, &vi);
1380ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1381ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13824d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1383ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_ldl(0, &param_i);
1384ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1385ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13864d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1387ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_ldl(0, &vui);
1388ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1389ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13904d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1391ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_ldl(0, &param_ui);
1392ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1393ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13944d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1395ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_ldl(0, &vbi);
1396ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1397ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
13984d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1399ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_ldl(0, &vf);
1400ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1401ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14024d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1403ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_ldl(0, &param_f);
1404ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1405ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14064d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1407ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvxl(0, &vsc);
1408ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1409ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14104d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1411ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvxl(0, &param_sc);
1412ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1413ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14144d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1415ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvxl(0, &vuc);
1416ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1417ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14184d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1419ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_lvxl(0, &vbc);
1420ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1421ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14224d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1423ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvxl(0, &param_uc);
1424ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1425ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14264d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1427ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvxl(0, &vs);
1428ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1429ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14304d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1431ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvxl(0, &param_s);
1432ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1433ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14344d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1435ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvxl(0, &vus);
1436ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1437ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14384d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1439ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvxl(0, &param_us);
1440ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1441ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14424d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1443ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_lvxl(0, &vbs);
1444ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1445ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14464d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1447ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_lvxl(0, &vp);
1448ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1449ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14504d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1451ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvxl(0, &vi);
1452ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1453ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14544d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1455ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvxl(0, &param_i);
1456ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1457ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14584d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1459ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvxl(0, &vui);
1460ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1461ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
14624d3a7b0a0608febe3cdac68f6121546672ca875eAnton Korobeynikov
1463ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvxl(0, &param_ui);
1464ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1465ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
146644270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1467ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_lvxl(0, &vbi);
1468ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1469ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
147044270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1471ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_lvxl(0, &vf);
1472ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1473ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
147444270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1475ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_lvxl(0, &param_f);
1476ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
1477ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
147844270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1479ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_loge */
1480ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_loge(vf);
1481ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vlogefp
1482ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vlogefp
148344270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1484ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vlogefp(vf);
1485ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vlogefp
1486ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vlogefp
148744270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1488ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_lvsl */
1489ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvsl(0, &param_i);
1490ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
1491ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
149244270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1493ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_lvsr */
1494ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvsr(0, &param_i);
1495ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
1496ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
149744270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1498ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_madd */
1499ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf =vec_madd(vf, vf, vf);
1500ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaddfp
1501ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaddfp
150244270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1503ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vmaddfp(vf, vf, vf);
1504ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaddfp
1505ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaddfp
150644270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1507ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_madds */
1508ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs = vec_madds(vs, vs, vs);
1509ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmhaddshs
1510ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmhaddshs
151144270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1512ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs = vec_vmhaddshs(vs, vs, vs);
1513ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmhaddshs
1514ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmhaddshs
151544270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1516ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_max */
1517ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_max(vsc, vsc);
1518ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsb
1519ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsb
152044270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1521ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_max(vbc, vsc);
1522ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsb
1523ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsb
152444270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1525ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_max(vsc, vbc);
1526ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsb
1527ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsb
152844270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1529ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_max(vuc, vuc);
1530ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxub
1531ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxub
153244270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1533ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_max(vbc, vuc);
1534ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxub
1535ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxub
153644270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1537ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_max(vuc, vbc);
1538ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxub
1539ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxub
154044270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1541ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_max(vs, vs);
1542ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsh
1543ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsh
154444270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1545ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_max(vbs, vs);
1546ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsh
1547ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsh
154844270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1549ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_max(vs, vbs);
1550ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsh
1551ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsh
155244270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1553ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_max(vus, vus);
1554ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuh
1555ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuh
155644270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1557ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_max(vbs, vus);
1558ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuh
1559ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuh
156044270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1561ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_max(vus, vbs);
1562ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuh
1563ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuh
156444270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1565ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_max(vi, vi);
1566ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsw
1567ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsw
156844270d6abff30415cdd873164823f48a45be7f8cAnton Yartsev
1569ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_max(vbi, vi);
1570ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsw
1571ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsw
1572dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1573ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_max(vi, vbi);
1574ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsw
1575ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsw
1576dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1577ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_max(vui, vui);
1578ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuw
1579ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuw
1580dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1581ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_max(vbi, vui);
1582ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuw
1583ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuw
1584dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1585ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_max(vui, vbi);
1586ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuw
1587ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuw
1588dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1589ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_max(vf, vf);
1590ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxfp
1591ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxfp
1592dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1593ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vmaxsb(vsc, vsc);
1594ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsb
1595ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsb
1596a4f235b7cab8ca3132b353470ad0fbbce5b5499aAnton Yartsev
1597ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vmaxsb(vbc, vsc);
1598ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsb
1599ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsb
1600dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1601ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vmaxsb(vsc, vbc);
1602ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsb
1603ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsb
1604dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1605ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vmaxub(vuc, vuc);
1606ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxub
1607ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxub
1608dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1609ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vmaxub(vbc, vuc);
1610ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxub
1611ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxub
1612dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1613ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vmaxub(vuc, vbc);
1614ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxub
1615ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxub
1616dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1617ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vmaxsh(vs, vs);
1618ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsh
1619ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsh
1620dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1621ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vmaxsh(vbs, vs);
1622ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsh
1623ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsh
1624dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1625ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vmaxsh(vs, vbs);
1626ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsh
1627ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsh
1628dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1629ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vmaxuh(vus, vus);
1630ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuh
1631ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuh
1632dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1633ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vmaxuh(vbs, vus);
1634ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuh
1635ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuh
1636dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1637ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vmaxuh(vus, vbs);
1638ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuh
1639ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuh
1640dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1641ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vmaxsw(vi, vi);
1642ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsw
1643ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsw
1644dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1645ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vmaxsw(vbi, vi);
1646ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsw
1647ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsw
1648dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1649ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vmaxsw(vi, vbi);
1650ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxsw
1651ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxsw
1652dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1653ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vmaxuw(vui, vui);
1654ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuw
1655ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuw
1656dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1657ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vmaxuw(vbi, vui);
1658ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuw
1659ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuw
1660dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1661ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vmaxuw(vui, vbi);
1662ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxuw
1663ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxuw
1664dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1665ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vmaxfp(vf, vf);
1666ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmaxfp
1667ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmaxfp
1668dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1669ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_mergeh */
1670ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_mergeh(vsc, vsc);
1671ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1672ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1673dd17394d225b06376e9ae1d23f36cec463fdef01Chris Lattner
1674ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_mergeh(vuc, vuc);
1675ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1676ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1677aa4fe05939ffbfd746b8f0065cc0b5e06ea94fe2Anton Yartsev
1678ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_mergeh(vbc, vbc);
1679ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1680ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1681ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1682ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_mergeh(vs, vs);
1683ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1684ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1685ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1686ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_mergeh(vp, vp);
1687ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1688ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1689ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1690ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_mergeh(vus, vus);
1691ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1692ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1693ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1694ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_mergeh(vbs, vbs);
1695ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1696ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1697ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1698ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_mergeh(vi, vi);
1699ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1700ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1701ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1702ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_mergeh(vui, vui);
1703ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1704ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1705ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1706ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_mergeh(vbi, vbi);
1707ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1708ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1709ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1710ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_mergeh(vf, vf);
1711ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1712ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1713ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1714ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vmrghb(vsc, vsc);
1715ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1716ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1717ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1718ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vmrghb(vuc, vuc);
1719ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1720ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1721ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1722ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vmrghb(vbc, vbc);
1723ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1724ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1725ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1726ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vmrghh(vs, vs);
1727ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1728ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1729ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1730ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vmrghh(vp, vp);
1731ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1732ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1733ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1734ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vmrghh(vus, vus);
1735ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1736ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1737ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1738ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vmrghh(vbs, vbs);
1739ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1740ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1741ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1742ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vmrghw(vi, vi);
1743ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1744ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1745ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1746ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vmrghw(vui, vui);
1747ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1748ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1749ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1750ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vmrghw(vbi, vbi);
1751ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1752ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1753ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1754ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vmrghw(vf, vf);
1755ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1756ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1757ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1758ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_mergel */
1759ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_mergel(vsc, vsc);
1760ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1761ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1762ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1763ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_mergel(vuc, vuc);
1764ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1765ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1766ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1767ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_mergel(vbc, vbc);
1768ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1769ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1770ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1771ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_mergel(vs, vs);
1772ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1773ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1774ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1775ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_mergeh(vp, vp);
1776ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1777ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1778ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1779ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_mergel(vus, vus);
1780ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1781ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1782ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1783ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_mergel(vbs, vbs);
1784ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1785ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1786ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1787ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_mergel(vi, vi);
1788ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1789ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1790ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1791ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_mergel(vui, vui);
1792ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1793ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1794ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1795ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_mergel(vbi, vbi);
1796ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1797ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1798ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1799ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_mergel(vf, vf);
1800ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1801ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1802ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1803ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vmrglb(vsc, vsc);
1804ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1805ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1806ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1807ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vmrglb(vuc, vuc);
1808ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1809ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1810ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1811ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vmrglb(vbc, vbc);
1812ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1813ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1814ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1815ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vmrglh(vs, vs);
1816ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1817ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1818ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1819ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vmrglh(vp, vp);
1820ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1821ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1822ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1823ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vmrglh(vus, vus);
1824ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1825ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1826ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1827ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vmrglh(vbs, vbs);
1828ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1829ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1830ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1831ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vmrglw(vi, vi);
1832ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1833ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1834ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1835ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vmrglw(vui, vui);
1836ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1837ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1838ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1839ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vmrglw(vbi, vbi);
1840ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1841ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1842ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1843ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vmrglw(vf, vf);
1844ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
1845ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
1846ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1847ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_mfvscr */
1848ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vus = vec_mfvscr();
1849ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mfvscr
1850ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mfvscr
1851ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1852ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_min */
1853ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_min(vsc, vsc);
1854ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsb
1855ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsb
1856ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1857ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_min(vbc, vsc);
1858ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsb
1859ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsb
1860ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1861ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_min(vsc, vbc);
1862ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsb
1863ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsb
1864ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1865ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_min(vuc, vuc);
1866ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminub
1867ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminub
1868ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1869ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_min(vbc, vuc);
1870ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminub
1871ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminub
1872ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1873ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_min(vuc, vbc);
1874ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminub
1875ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminub
1876ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1877ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_min(vs, vs);
1878ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsh
1879ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsh
1880ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1881ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_min(vbs, vs);
1882ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsh
1883ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsh
1884ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1885ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_min(vs, vbs);
1886ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsh
1887ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsh
1888ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1889ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_min(vus, vus);
1890ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuh
1891ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuh
1892ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1893ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_min(vbs, vus);
1894ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuh
1895ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuh
1896ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1897ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_min(vus, vbs);
1898ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuh
1899ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuh
1900ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1901ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_min(vi, vi);
1902ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsw
1903ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsw
1904ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1905ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_min(vbi, vi);
1906ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsw
1907ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsw
1908ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1909ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_min(vi, vbi);
1910ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsw
1911ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsw
1912ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1913ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_min(vui, vui);
1914ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuw
1915ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuw
1916ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1917ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_min(vbi, vui);
1918ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuw
1919ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuw
1920ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1921ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_min(vui, vbi);
1922ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuw
1923ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuw
1924ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1925ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_min(vf, vf);
1926ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminfp
1927ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminfp
1928ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1929ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vminsb(vsc, vsc);
1930ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsb
1931ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsb
1932ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1933ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vminsb(vbc, vsc);
1934ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsb
1935ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsb
1936ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1937ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vminsb(vsc, vbc);
1938ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsb
1939ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsb
1940ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1941ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vminub(vuc, vuc);
1942ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminub
1943ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminub
1944ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1945ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vminub(vbc, vuc);
1946ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminub
1947ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminub
1948ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1949ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vminub(vuc, vbc);
1950ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminub
1951ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminub
1952ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1953ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vminsh(vs, vs);
1954ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsh
1955ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsh
1956ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1957ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vminsh(vbs, vs);
1958ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsh
1959ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsh
1960ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1961ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vminsh(vs, vbs);
1962ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsh
1963ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsh
1964ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1965ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vminuh(vus, vus);
1966ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuh
1967ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuh
1968ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1969ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vminuh(vbs, vus);
1970ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuh
1971ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuh
1972ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1973ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vminuh(vus, vbs);
1974ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuh
1975ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuh
1976ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1977ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vminsw(vi, vi);
1978ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsw
1979ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsw
1980ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1981ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vminsw(vbi, vi);
1982ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsw
1983ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsw
1984ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1985ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vminsw(vi, vbi);
1986ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminsw
1987ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminsw
1988ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1989ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vminuw(vui, vui);
1990ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuw
1991ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuw
1992ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1993ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vminuw(vbi, vui);
1994ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuw
1995ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuw
1996ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
1997ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vminuw(vui, vbi);
1998ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminuw
1999ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminuw
2000ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2001ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vminfp(vf, vf);
2002ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vminfp
2003ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vminfp
2004ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2005ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_mladd */
2006ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_mladd(vus, vus, vus);
2007ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: mul <8 x i16>
2008ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
2009ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: mul <8 x i16>
2010ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
2011ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2012ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs = vec_mladd(vus, vs, vs);
2013ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: mul <8 x i16>
2014ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
2015ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: mul <8 x i16>
2016ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
2017ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2018ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs = vec_mladd(vs, vus, vus);
2019ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: mul <8 x i16>
2020ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
2021ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: mul <8 x i16>
2022ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
2023ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2024ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs = vec_mladd(vs, vs, vs);
2025ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: mul <8 x i16>
2026ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: add <8 x i16>
2027ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: mul <8 x i16>
2028ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: add <8 x i16>
2029ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2030ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_mradds */
2031ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs = vec_mradds(vs, vs, vs);
2032ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmhraddshs
2033ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmhraddshs
2034ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2035ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs = vec_vmhraddshs(vs, vs, vs);
2036ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmhraddshs
2037ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmhraddshs
2038ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2039ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_msum */
2040ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_msum(vsc, vuc, vi);
2041ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsummbm
2042ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsummbm
2043ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2044ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_msum(vuc, vuc, vui);
2045ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsumubm
2046ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsumubm
2047ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2048ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_msum(vs, vs, vi);
2049ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsumshm
2050ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsumshm
2051ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2052ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_msum(vus, vus, vui);
2053ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsumuhm
2054ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsumuhm
2055ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2056ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vmsummbm(vsc, vuc, vi);
2057ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsummbm
2058ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsummbm
2059ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2060ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vmsumubm(vuc, vuc, vui);
2061ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsumubm
2062ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsumubm
2063ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2064ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vmsumshm(vs, vs, vi);
2065ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsumshm
2066ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsumshm
2067ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2068ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vmsumuhm(vus, vus, vui);
2069ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsumuhm
2070ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsumuhm
2071ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2072ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_msums */
2073ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_msums(vs, vs, vi);
2074ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsumshs
2075ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsumshs
2076ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2077ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_msums(vus, vus, vui);
2078ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsumuhs
2079ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsumuhs
2080ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2081ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vmsumshs(vs, vs, vi);
2082ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsumshs
2083ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsumshs
2084ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2085ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vmsumuhs(vus, vus, vui);
2086ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmsumuhs
2087ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmsumuhs
2088ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2089ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_mtvscr */
2090ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_mtvscr(vsc);
2091ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mtvscr
2092ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mtvscr
2093ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2094ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_mtvscr(vuc);
2095ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mtvscr
2096ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mtvscr
2097ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2098ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_mtvscr(vbc);
2099ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mtvscr
2100ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mtvscr
2101ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2102ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_mtvscr(vs);
2103ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mtvscr
2104ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mtvscr
2105ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2106ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_mtvscr(vus);
2107ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mtvscr
2108ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mtvscr
2109ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2110ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_mtvscr(vbs);
2111ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mtvscr
2112ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mtvscr
2113ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2114ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_mtvscr(vp);
2115ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mtvscr
2116ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mtvscr
2117ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2118ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_mtvscr(vi);
2119ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mtvscr
2120ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mtvscr
2121ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2122ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_mtvscr(vui);
2123ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mtvscr
2124ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mtvscr
2125ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2126ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_mtvscr(vbi);
2127ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.mtvscr
2128ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.mtvscr
2129ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2130ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_mule */
2131ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_mule(vsc, vsc);
2132ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmulesb
2133ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmulosb
2134ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2135ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_mule(vuc, vuc);
2136ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmuleub
2137ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmuloub
2138ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2139ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_mule(vs, vs);
2140ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmulesh
2141ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmulosh
2142ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2143ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_mule(vus, vus);
2144ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmuleuh
2145ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmulouh
2146ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2147ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vmulesb(vsc, vsc);
2148ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmulesb
2149ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmulosb
2150ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2151ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vmuleub(vuc, vuc);
2152ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmuleub
2153ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmuloub
2154ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2155ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vmulesh(vs, vs);
2156ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmulesh
2157ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmulosh
2158ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2159ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vmuleuh(vus, vus);
2160ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmuleuh
2161ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmulouh
2162ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2163ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_mulo */
2164ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_mulo(vsc, vsc);
2165ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmulosb
2166ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmulesb
2167ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2168ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_mulo(vuc, vuc);
2169ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmuloub
2170ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmuleub
2171ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2172ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_mulo(vs, vs);
2173ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmulosh
2174ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmulesh
2175ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2176ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_mulo(vus, vus);
2177ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmulouh
2178ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmuleuh
2179ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2180ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vmulosb(vsc, vsc);
2181ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmulosb
2182ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmulesb
2183ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2184ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vmuloub(vuc, vuc);
2185ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmuloub
2186ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmuleub
2187ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2188ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vmulosh(vs, vs);
2189ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmulosh
2190ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmulesh
2191ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2192ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vmulouh(vus, vus);
2193ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vmulouh
2194ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vmuleuh
2195ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2196ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_nmsub */
2197ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_nmsub(vf, vf, vf);
2198ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vnmsubfp
2199ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vnmsubfp
2200ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2201ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vnmsubfp(vf, vf, vf);
2202ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vnmsubfp
2203ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vnmsubfp
2204ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2205ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_nor */
2206ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_nor(vsc, vsc);
2207ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2208ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2209ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2210ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2211ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2212ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_nor(vuc, vuc);
2213ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2214ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2215ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2216ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2217ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2218ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_nor(vbc, vbc);
2219ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2220ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2221ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2222ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2223ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2224ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_nor(vs, vs);
2225ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2226ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2227ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2228ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2229ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2230ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_nor(vus, vus);
2231ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2232ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2233ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2234ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2235ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2236ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_nor(vbs, vbs);
2237ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2238ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2239ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2240ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2241ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2242ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_nor(vi, vi);
2243ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2244ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2245ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2246ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2247ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2248ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_nor(vui, vui);
2249ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2250ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2251ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2252ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2253ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2254ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_nor(vbi, vbi);
2255ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2256ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2257ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2258ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2259ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2260ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_nor(vf, vf);
2261ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2262ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2263ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2264ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2265ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2266ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vnor(vsc, vsc);
2267ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2268ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2269ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2270ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2271ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2272ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vnor(vuc, vuc);
2273ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2274ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2275ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2276ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2277ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2278ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vnor(vbc, vbc);
2279ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2280ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2281ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2282ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2283ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2284ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vnor(vs, vs);
2285ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2286ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2287ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2288ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2289ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2290ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vnor(vus, vus);
2291ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2292ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2293ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2294ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2295ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2296ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vnor(vbs, vbs);
2297ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2298ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2299ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2300ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2301ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2302ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vnor(vi, vi);
2303ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2304ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2305ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2306ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2307ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2308ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vnor(vui, vui);
2309ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2310ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2311ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2312ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2313ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2314ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vnor(vbi, vbi);
2315ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2316ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2317ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2318ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2319ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2320ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vnor(vf, vf);
2321ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2322ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2323ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2324ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2325ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2326ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_or */
2327ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_or(vsc, vsc);
2328ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2329ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2330ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2331ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_or(vbc, vsc);
2332ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2333ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2334ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2335ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_or(vsc, vbc);
2336ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2337ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2338ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2339ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_or(vuc, vuc);
2340ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2341ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2342ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2343ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_or(vbc, vuc);
2344ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2345ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2346ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2347ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_or(vuc, vbc);
2348ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2349ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2350ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2351ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_or(vbc, vbc);
2352ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2353ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2354ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2355ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_or(vs, vs);
2356ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2357ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2358ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2359ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_or(vbs, vs);
2360ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2361ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2362ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2363ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_or(vs, vbs);
2364ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2365ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2366ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2367ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_or(vus, vus);
2368ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2369ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2370ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2371ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_or(vbs, vus);
2372ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2373ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2374ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2375ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_or(vus, vbs);
2376ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2377ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2378ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2379ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_or(vbs, vbs);
2380ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2381ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2382ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2383ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_or(vi, vi);
2384ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2385ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2386ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2387ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_or(vbi, vi);
2388ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2389ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2390ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2391ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_or(vi, vbi);
2392ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2393ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2394ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2395ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_or(vui, vui);
2396ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2397ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2398ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2399ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_or(vbi, vui);
2400ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2401ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2402ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2403ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_or(vui, vbi);
2404ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2405ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2406ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2407ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_or(vbi, vbi);
2408ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2409ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2410ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2411ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_or(vf, vf);
2412ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2413ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2414ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2415ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_or(vbi, vf);
2416ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2417ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2418ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2419ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_or(vf, vbi);
2420ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2421ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2422ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2423ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vor(vsc, vsc);
2424ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2425ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2426ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2427ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vor(vbc, vsc);
2428ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2429ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2430ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2431ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vor(vsc, vbc);
2432ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2433ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2434ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2435ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vor(vuc, vuc);
2436ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2437ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2438ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2439ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vor(vbc, vuc);
2440ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2441ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2442ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2443ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vor(vuc, vbc);
2444ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2445ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2446ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2447ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vor(vbc, vbc);
2448ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2449ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2450ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2451ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vor(vs, vs);
2452ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2453ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2454ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2455ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vor(vbs, vs);
2456ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2457ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2458ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2459ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vor(vs, vbs);
2460ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2461ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2462ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2463ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vor(vus, vus);
2464ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2465ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2466ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2467ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vor(vbs, vus);
2468ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2469ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2470ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2471ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vor(vus, vbs);
2472ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2473ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2474ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2475ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vor(vbs, vbs);
2476ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2477ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2478ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2479ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vor(vi, vi);
2480ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2481ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2482ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2483ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vor(vbi, vi);
2484ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2485ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2486ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2487ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vor(vi, vbi);
2488ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2489ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2490ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2491ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vor(vui, vui);
2492ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2493ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2494ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2495ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vor(vbi, vui);
2496ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2497ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2498ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2499ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vor(vui, vbi);
2500ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2501ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2502ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2503ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vor(vbi, vbi);
2504ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2505ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2506ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2507ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vor(vf, vf);
2508ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2509ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2510ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2511ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vor(vbi, vf);
2512ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2513ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2514ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2515ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vor(vf, vbi);
2516ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2517ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2518ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2519ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_pack */
2520ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_pack(vs, vs);
2521ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2522ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2523ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2524ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_pack(vus, vus);
2525ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2526ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2527ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2528ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_pack(vbs, vbs);
2529ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2530ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2531ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2532ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_pack(vi, vi);
2533ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2534ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2535ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2536ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_pack(vui, vui);
2537ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2538ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2539ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2540ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_pack(vbi, vbi);
2541ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2542ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2543ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2544ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vpkuhum(vs, vs);
2545ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2546ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2547ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2548ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vpkuhum(vus, vus);
2549ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2550ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2551ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2552ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vpkuhum(vbs, vbs);
2553ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2554ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2555ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2556ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vpkuwum(vi, vi);
2557ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2558ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2559ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2560ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vpkuwum(vui, vui);
2561ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2562ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2563ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2564ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vpkuwum(vbi, vbi);
2565ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2566ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2567ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2568ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_packpx */
2569ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp = vec_packpx(vui, vui);
2570ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkpx
2571ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkpx
2572ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2573ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp = vec_vpkpx(vui, vui);
2574ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkpx
2575ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkpx
2576ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2577ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_packs */
2578ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_packs(vs, vs);
2579ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkshss
2580ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkshss
2581ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2582ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_packs(vus, vus);
2583ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkuhus
2584ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkuhus
2585ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2586ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_packs(vi, vi);
2587ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkswss
2588ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkswss
2589ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2590ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_packs(vui, vui);
2591ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkuwus
2592ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkuwus
2593ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2594ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vpkshss(vs, vs);
2595ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkshss
2596ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkshss
2597ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2598ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vpkuhus(vus, vus);
2599ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkuhus
2600ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkuhus
2601ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2602ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vpkswss(vi, vi);
2603ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkswss
2604ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkswss
2605ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2606ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vpkuwus(vui, vui);
2607ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkuwus
2608ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkuwus
2609ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2610ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_packsu */
2611ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_packsu(vs, vs);
2612ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkshus
2613ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkshus
2614ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2615ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_packsu(vus, vus);
2616ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkuhus
2617ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkuhus
2618ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2619ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_packsu(vi, vi);
2620ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkswus
2621ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkswus
2622ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2623ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_packsu(vui, vui);
2624ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkuwus
2625ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkuwus
2626ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2627ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vpkshus(vs, vs);
2628ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkshus
2629ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkshus
2630ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2631ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vpkshus(vus, vus);
2632ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkuhus
2633ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkuhus
2634ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2635ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vpkswus(vi, vi);
2636ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkswus
2637ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkswus
2638ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2639ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vpkswus(vui, vui);
2640ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vpkuwus
2641ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vpkuwus
2642ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2643ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_perm */
2644ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_perm(vsc, vsc, vuc);
2645ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2646ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2647ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2648ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_perm(vuc, vuc, vuc);
2649ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2650ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2651ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2652ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_perm(vbc, vbc, vuc);
2653ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2654ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2655ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2656ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_perm(vs, vs, vuc);
2657ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2658ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2659ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2660ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_perm(vus, vus, vuc);
2661ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2662ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2663ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2664ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_perm(vbs, vbs, vuc);
2665ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2666ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2667ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2668ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_perm(vp, vp, vuc);
2669ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2670ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2671ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2672ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_perm(vi, vi, vuc);
2673ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2674ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2675ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2676ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_perm(vui, vui, vuc);
2677ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2678ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2679ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2680ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_perm(vbi, vbi, vuc);
2681ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2682ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2683ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2684ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_perm(vf, vf, vuc);
2685ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2686ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2687ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2688ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vperm(vsc, vsc, vuc);
2689ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2690ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2691ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2692ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vperm(vuc, vuc, vuc);
2693ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2694ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2695ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2696ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vperm(vbc, vbc, vuc);
2697ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2698ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2699ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2700ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vperm(vs, vs, vuc);
2701ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2702ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2703ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2704ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vperm(vus, vus, vuc);
2705ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2706ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2707ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2708ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vperm(vbs, vbs, vuc);
2709ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2710ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2711ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2712ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vperm(vp, vp, vuc);
2713ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2714ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2715ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2716ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vperm(vi, vi, vuc);
2717ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2718ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2719ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2720ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vperm(vui, vui, vuc);
2721ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2722ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2723ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2724ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vperm(vbi, vbi, vuc);
2725ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2726ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2727ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2728ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vperm(vf, vf, vuc);
2729ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
2730ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
2731ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2732ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_re */
2733ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_re(vf);
2734ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrefp
2735ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrefp
2736ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2737ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vrefp(vf);
2738ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrefp
2739ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrefp
2740ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2741ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_rl */
2742ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_rl(vsc, vuc);
2743ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlb
2744ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlb
2745ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2746ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_rl(vuc, vuc);
2747ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlb
2748ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlb
2749ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2750ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_rl(vs, vus);
2751ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlh
2752ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlh
2753ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2754ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_rl(vus, vus);
2755ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlh
2756ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlh
2757ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2758ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_rl(vi, vui);
2759ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlw
2760ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlw
2761ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2762ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_rl(vui, vui);
2763ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlw
2764ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlw
2765ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2766ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vrlb(vsc, vuc);
2767ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlb
2768ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlb
2769ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2770ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vrlb(vuc, vuc);
2771ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlb
2772ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlb
2773ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2774ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vrlh(vs, vus);
2775ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlh
2776ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlh
2777ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2778ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vrlh(vus, vus);
2779ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlh
2780ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlh
2781ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2782ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vrlw(vi, vui);
2783ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlw
2784ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlw
2785ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2786ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vrlw(vui, vui);
2787ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrlw
2788ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrlw
2789ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2790ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_round */
2791ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_round(vf);
2792ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrfin
2793ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrfin
2794ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2795ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vrfin(vf);
2796ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrfin
2797ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrfin
2798ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2799ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_rsqrte */
2800ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_rsqrte(vf);
2801ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrsqrtefp
2802ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrsqrtefp
2803ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2804ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vrsqrtefp(vf);
2805ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrsqrtefp
2806ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrsqrtefp
2807ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2808ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sel */
2809ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sel(vsc, vsc, vuc);
2810ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2811ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2812ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2813ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2814ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2815ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2816ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2817ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2818ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2819ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sel(vsc, vsc, vbc);
2820ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2821ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2822ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2823ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2824ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2825ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2826ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2827ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2828ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2829ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sel(vuc, vuc, vuc);
2830ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2831ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2832ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2833ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2834ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2835ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2836ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2837ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2838ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2839ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sel(vuc, vuc, vbc);
2840ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2841ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2842ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2843ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2844ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2845ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2846ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2847ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2848ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2849ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_sel(vbc, vbc, vuc);
2850ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2851ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2852ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2853ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2854ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2855ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2856ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2857ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2858ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2859ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_sel(vbc, vbc, vbc);
2860ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
2861ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2862ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
2863ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
2864ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
2865ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2866ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
2867ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
2868ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2869ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sel(vs, vs, vus);
2870ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2871ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2872ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2873ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2874ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2875ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2876ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2877ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2878ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2879ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sel(vs, vs, vbs);
2880ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2881ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2882ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2883ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2884ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2885ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2886ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2887ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2888ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2889ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sel(vus, vus, vus);
2890ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2891ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2892ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2893ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2894ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2895ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2896ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2897ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2898ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2899ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sel(vus, vus, vbs);
2900ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2901ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2902ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2903ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2904ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2905ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2906ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2907ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2908ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2909ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_sel(vbs, vbs, vus);
2910ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2911ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2912ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2913ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2914ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2915ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2916ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2917ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2918ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2919ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_sel(vbs, vbs, vbs);
2920ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
2921ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2922ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
2923ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
2924ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
2925ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2926ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
2927ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
2928ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2929ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sel(vi, vi, vui);
2930ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2931ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2932ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2933ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2934ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2935ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2936ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2937ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2938ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2939ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sel(vi, vi, vbi);
2940ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2941ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2942ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2943ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2944ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2945ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2946ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2947ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2948ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2949ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sel(vui, vui, vui);
2950ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2951ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2952ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2953ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2954ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2955ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2956ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2957ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2958ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2959ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sel(vui, vui, vbi);
2960ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2961ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2962ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2963ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2964ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2965ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2966ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2967ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2968ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2969ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_sel(vbi, vbi, vui);
2970ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2971ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2972ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2973ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2974ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2975ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2976ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2977ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2978ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2979ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_sel(vbi, vbi, vbi);
2980ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2981ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2982ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2983ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2984ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2985ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2986ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2987ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2988ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2989ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_sel(vf, vf, vui);
2990ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
2991ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2992ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
2993ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
2994ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
2995ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2996ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
2997ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
2998ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
2999ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_sel(vf, vf, vbi);
3000ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
3001ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3002ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3003ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
3004ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
3005ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3006ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3007ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
3008ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3009ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsel(vsc, vsc, vuc);
3010ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
3011ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3012ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3013ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
3014ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
3015ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3016ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3017ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
3018ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3019ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsel(vsc, vsc, vbc);
3020ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
3021ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3022ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3023ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
3024ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
3025ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3026ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3027ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
3028ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3029ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsel(vuc, vuc, vuc);
3030ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
3031ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3032ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3033ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
3034ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
3035ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3036ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3037ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
3038ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3039ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsel(vuc, vuc, vbc);
3040ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
3041ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3042ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3043ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
3044ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
3045ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3046ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3047ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
3048ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3049ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vsel(vbc, vbc, vuc);
3050ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
3051ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3052ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3053ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
3054ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
3055ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3056ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3057ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
3058ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3059ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vsel(vbc, vbc, vbc);
3060ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
3061ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3062ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <16 x i8>
3063ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <16 x i8>
3064ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
3065ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3066ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <16 x i8>
3067ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <16 x i8>
3068ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3069ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsel(vs, vs, vus);
3070ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
3071ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3072ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3073ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
3074ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
3075ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3076ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3077ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
3078ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3079ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsel(vs, vs, vbs);
3080ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
3081ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3082ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3083ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
3084ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
3085ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3086ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3087ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
3088ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3089ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsel(vus, vus, vus);
3090ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
3091ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3092ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3093ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
3094ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
3095ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3096ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3097ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
3098ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3099ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsel(vus, vus, vbs);
3100ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
3101ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3102ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3103ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
3104ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
3105ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3106ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3107ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
3108ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3109ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vsel(vbs, vbs, vus);
3110ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
3111ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3112ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3113ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
3114ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
3115ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3116ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3117ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
3118ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3119ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vsel(vbs, vbs, vbs);
3120ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
3121ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3122ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <8 x i16>
3123ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <8 x i16>
3124ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
3125ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3126ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <8 x i16>
3127ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <8 x i16>
3128ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3129ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsel(vi, vi, vui);
3130ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
3131ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3132ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3133ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
3134ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
3135ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3136ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3137ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
3138ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3139ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsel(vi, vi, vbi);
3140ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
3141ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3142ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3143ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
3144ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
3145ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3146ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3147ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
3148ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3149ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsel(vui, vui, vui);
3150ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
3151ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3152ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3153ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
3154ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
3155ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3156ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3157ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
3158ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3159ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsel(vui, vui, vbi);
3160ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
3161ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3162ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3163ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
3164ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
3165ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3166ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3167ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
3168ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3169ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vsel(vbi, vbi, vui);
3170ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
3171ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3172ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3173ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
3174ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
3175ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3176ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3177ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
3178ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3179ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vsel(vbi, vbi, vbi);
3180ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
3181ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3182ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3183ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
3184ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
3185ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3186ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3187ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
3188ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3189ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vsel(vf, vf, vui);
3190ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
3191ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3192ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3193ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
3194ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
3195ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3196ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3197ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
3198ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3199ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vsel(vf, vf, vbi);
3200ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
3201ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3202ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: and <4 x i32>
3203ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: or <4 x i32>
3204ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
3205ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3206ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: and <4 x i32>
3207ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: or <4 x i32>
3208ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3209ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sl */
3210ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sl(vsc, vuc);
3211ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <16 x i8>
3212ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <16 x i8>
3213ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3214ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sl(vuc, vuc);
3215ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <16 x i8>
3216ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <16 x i8>
3217ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3218ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sl(vs, vus);
3219ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <8 x i16>
3220ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <8 x i16>
3221ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3222ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sl(vus, vus);
3223ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <8 x i16>
3224ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <8 x i16>
3225ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3226ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sl(vi, vui);
3227ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <4 x i32>
3228ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <4 x i32>
3229ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3230ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sl(vui, vui);
3231ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <4 x i32>
3232ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <4 x i32>
3233ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3234ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vslb(vsc, vuc);
3235ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <16 x i8>
3236ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <16 x i8>
3237ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3238ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vslb(vuc, vuc);
3239ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <16 x i8>
3240ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <16 x i8>
3241ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3242ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vslh(vs, vus);
3243ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <8 x i16>
3244ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <8 x i16>
3245ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3246ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vslh(vus, vus);
3247ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <8 x i16>
3248ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <8 x i16>
3249ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3250ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vslw(vi, vui);
3251ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <4 x i32>
3252ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <4 x i32>
3253ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3254ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vslw(vui, vui);
3255ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shl <4 x i32>
3256ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shl <4 x i32>
3257ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3258ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sld */
3259ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sld(vsc, vsc, 0);
3260ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3261ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3262ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3263ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3264ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3265ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sld(vuc, vuc, 0);
3266ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3267ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3268ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3269ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3270ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3271ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sld(vs, vs, 0);
3272ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3273ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3274ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3275ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3276ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3277ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sld(vus, vus, 0);
3278ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3279ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3280ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3281ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3282ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3283ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_sld(vp, vp, 0);
3284ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3285ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3286ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3287ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3288ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3289ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sld(vi, vi, 0);
3290ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3291ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3292ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3293ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3294ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3295ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sld(vui, vui, 0);
3296ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3297ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3298ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3299ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3300ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3301ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_sld(vf, vf, 0);
3302ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3303ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3304ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3305ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3306ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3307ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsldoi(vsc, vsc, 0);
3308ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3309ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3310ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3311ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3312ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3313ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsldoi(vuc, vuc, 0);
3314ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3315ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3316ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3317ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3318ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3319ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsldoi(vs, vs, 0);
3320ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3321ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3322ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3323ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3324ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3325ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsldoi(vus, vus, 0);
3326ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3327ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3328ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3329ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3330ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3331ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vsldoi(vp, vp, 0);
3332ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3333ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3334ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3335ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3336ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3337ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsldoi(vi, vi, 0);
3338ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3339ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3340ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3341ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3342ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3343ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsldoi(vui, vui, 0);
3344ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3345ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3346ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3347ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3348ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3349ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vsldoi(vf, vf, 0);
3350ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3351ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 1
3352ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub nsw i32 {{[%_.a-z0-9]+}}, 15
3353ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3354ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3355ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sll */
3356ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sll(vsc, vuc);
3357ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3358ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3359ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3360ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sll(vsc, vus);
3361ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3362ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3363ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3364ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sll(vsc, vui);
3365ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3366ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3367ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3368ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sll(vuc, vuc);
3369ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3370ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3371ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3372ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sll(vuc, vus);
3373ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3374ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3375ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3376ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sll(vuc, vui);
3377ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3378ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3379ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3380ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_sll(vbc, vuc);
3381ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3382ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3383ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3384ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_sll(vbc, vus);
3385ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3386ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3387ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3388ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_sll(vbc, vui);
3389ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3390ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3391ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3392ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sll(vs, vuc);
3393ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3394ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3395ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3396ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sll(vs, vus);
3397ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3398ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3399ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3400ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sll(vs, vui);
3401ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3402ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3403ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3404ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sll(vus, vuc);
3405ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3406ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3407ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3408ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sll(vus, vus);
3409ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3410ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3411ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3412ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sll(vus, vui);
3413ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3414ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3415ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3416ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_sll(vbs, vuc);
3417ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3418ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3419ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3420ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_sll(vbs, vus);
3421ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3422ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3423ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3424ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_sll(vbs, vui);
3425ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3426ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3427ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3428ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_sll(vp, vuc);
3429ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3430ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3431ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3432ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_sll(vp, vus);
3433ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3434ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3435ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3436ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_sll(vp, vui);
3437ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3438ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3439ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3440ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sll(vi, vuc);
3441ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3442ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3443ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3444ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sll(vi, vus);
3445ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3446ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3447ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3448ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sll(vi, vui);
3449ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3450ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3451ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3452ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sll(vui, vuc);
3453ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3454ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3455ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3456ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sll(vui, vus);
3457ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3458ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3459ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3460ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sll(vui, vui);
3461ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3462ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3463ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3464ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_sll(vbi, vuc);
3465ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3466ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3467ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3468ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_sll(vbi, vus);
3469ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3470ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3471ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3472ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_sll(vbi, vui);
3473ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3474ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3475ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3476ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsl(vsc, vuc);
3477ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3478ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3479ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3480ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsl(vsc, vus);
3481ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3482ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3483ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3484ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsl(vsc, vui);
3485ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3486ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3487ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3488ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsl(vuc, vuc);
3489ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3490ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3491ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3492ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsl(vuc, vus);
3493ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3494ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3495ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3496ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsl(vuc, vui);
3497ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3498ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3499ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3500ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vsl(vbc, vuc);
3501ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3502ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3503ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3504ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vsl(vbc, vus);
3505ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3506ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3507ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3508ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vsl(vbc, vui);
3509ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3510ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3511ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3512ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsl(vs, vuc);
3513ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3514ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3515ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3516ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsl(vs, vus);
3517ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3518ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3519ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3520ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsl(vs, vui);
3521ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3522ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3523ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3524ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsl(vus, vuc);
3525ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3526ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3527ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3528ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsl(vus, vus);
3529ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3530ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3531ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3532ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsl(vus, vui);
3533ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3534ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3535ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3536ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vsl(vbs, vuc);
3537ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3538ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3539ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3540ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vsl(vbs, vus);
3541ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3542ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3543ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3544ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vsl(vbs, vui);
3545ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3546ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3547ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3548ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vsl(vp, vuc);
3549ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3550ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3551ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3552ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vsl(vp, vus);
3553ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3554ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3555ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3556ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vsl(vp, vui);
3557ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3558ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3559ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3560ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsl(vi, vuc);
3561ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3562ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3563ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3564ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsl(vi, vus);
3565ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3566ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3567ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3568ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsl(vi, vui);
3569ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3570ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3571ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3572ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsl(vui, vuc);
3573ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3574ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3575ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3576ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsl(vui, vus);
3577ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3578ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3579ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3580ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsl(vui, vui);
3581ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3582ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3583ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3584ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vsl(vbi, vuc);
3585ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3586ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3587ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3588ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vsl(vbi, vus);
3589ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3590ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3591ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3592ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vsl(vbi, vui);
3593ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsl
3594ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsl
3595ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3596ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_slo */
3597ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_slo(vsc, vsc);
3598ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3599ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3600ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3601ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_slo(vsc, vuc);
3602ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3603ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3604ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3605ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_slo(vuc, vsc);
3606ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3607ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3608ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3609ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_slo(vuc, vuc);
3610ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3611ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3612ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3613ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_slo(vs, vsc);
3614ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3615ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3616ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3617ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_slo(vs, vuc);
3618ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3619ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3620ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3621ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_slo(vus, vsc);
3622ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3623ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3624ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3625ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_slo(vus, vuc);
3626ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3627ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3628ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3629ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_slo(vp, vsc);
3630ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3631ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3632ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3633ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_slo(vp, vuc);
3634ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3635ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3636ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3637ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_slo(vi, vsc);
3638ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3639ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3640ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3641ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_slo(vi, vuc);
3642ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3643ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3644ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3645ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_slo(vui, vsc);
3646ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3647ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3648ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3649ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_slo(vui, vuc);
3650ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3651ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3652ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3653ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_slo(vf, vsc);
3654ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3655ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3656ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3657ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_slo(vf, vuc);
3658ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3659ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3660ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3661ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vslo(vsc, vsc);
3662ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3663ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3664ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3665ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vslo(vsc, vuc);
3666ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3667ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3668ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3669ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vslo(vuc, vsc);
3670ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3671ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3672ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3673ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vslo(vuc, vuc);
3674ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3675ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3676ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3677ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vslo(vs, vsc);
3678ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3679ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3680ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3681ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vslo(vs, vuc);
3682ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3683ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3684ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3685ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vslo(vus, vsc);
3686ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3687ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3688ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3689ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vslo(vus, vuc);
3690ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3691ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3692ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3693ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vslo(vp, vsc);
3694ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3695ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3696ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3697ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vslo(vp, vuc);
3698ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3699ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3700ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3701ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vslo(vi, vsc);
3702ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3703ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3704ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3705ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vslo(vi, vuc);
3706ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3707ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3708ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3709ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vslo(vui, vsc);
3710ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3711ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3712ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3713ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vslo(vui, vuc);
3714ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3715ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3716ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3717ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vslo(vf, vsc);
3718ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3719ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3720ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3721ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vslo(vf, vuc);
3722ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vslo
3723ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vslo
3724ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3725ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_splat */
3726ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_splat(vsc, 0);
3727ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3728ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3729ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3730ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_splat(vuc, 0);
3731ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3732ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3733ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3734ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_splat(vbc, 0);
3735ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3736ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3737ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3738ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_splat(vs, 0);
3739ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3740ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3741ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3742ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_splat(vus, 0);
3743ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3744ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3745ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3746ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_splat(vbs, 0);
3747ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3748ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3749ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3750ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_splat(vp, 0);
3751ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3752ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3753ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3754ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_splat(vi, 0);
3755ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3756ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3757ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3758ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_splat(vui, 0);
3759ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3760ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3761ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3762ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_splat(vbi, 0);
3763ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3764ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3765ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3766ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_splat(vf, 0);
3767ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3768ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3769ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3770ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vspltb(vsc, 0);
3771ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3772ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3773ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3774ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vspltb(vuc, 0);
3775ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3776ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3777ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3778ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vspltb(vbc, 0);
3779ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3780ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3781ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3782ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsplth(vs, 0);
3783ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3784ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3785ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3786ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsplth(vus, 0);
3787ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3788ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3789ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3790ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vsplth(vbs, 0);
3791ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3792ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3793ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3794ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vsplth(vp, 0);
3795ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3796ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3797ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3798ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vspltw(vi, 0);
3799ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3800ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3801ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3802ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vspltw(vui, 0);
3803ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3804ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3805ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3806ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vspltw(vbi, 0);
3807ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3808ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3809ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3810ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vspltw(vf, 0);
3811ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
3812ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
3813ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3814ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_splat_s8 */
3815ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_splat_s8(0x09);                 // TODO: add check
3816ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vspltisb(0x09);                 // TODO: add check
3817ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3818ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_splat_s16 */
3819ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs = vec_splat_s16(0x09);                 // TODO: add check
3820ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs = vec_vspltish(0x09);                  // TODO: add check
3821ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3822ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_splat_s32 */
3823ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi = vec_splat_s32(0x09);                 // TODO: add check
3824ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi = vec_vspltisw(0x09);                  // TODO: add check
3825ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3826ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_splat_u8 */
3827ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_splat_u8(0x09);                 // TODO: add check
3828ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3829ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_splat_u16 */
3830ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_splat_u16(0x09);                // TODO: add check
3831ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3832ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_splat_u32 */
3833ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_splat_u32(0x09);                // TODO: add check
3834ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3835ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sr */
3836ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sr(vsc, vuc);
3837ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <16 x i8>
3838ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <16 x i8>
3839ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3840ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sr(vuc, vuc);
3841ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <16 x i8>
3842ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <16 x i8>
3843ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3844ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sr(vs, vus);
3845ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <8 x i16>
3846ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <8 x i16>
3847ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3848ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sr(vus, vus);
3849ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <8 x i16>
3850ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <8 x i16>
3851ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3852ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sr(vi, vui);
3853ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <4 x i32>
3854ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <4 x i32>
3855ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3856ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sr(vui, vui);
3857ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <4 x i32>
3858ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <4 x i32>
3859ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3860ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsrb(vsc, vuc);
3861ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <16 x i8>
3862ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <16 x i8>
3863ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3864ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsrb(vuc, vuc);
3865ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <16 x i8>
3866ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <16 x i8>
3867ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3868ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsrh(vs, vus);
3869ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <8 x i16>
3870ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <8 x i16>
3871ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3872ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsrh(vus, vus);
3873ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <8 x i16>
3874ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <8 x i16>
3875ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3876ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsrw(vi, vui);
3877ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <4 x i32>
3878ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <4 x i32>
3879ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3880ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsrw(vui, vui);
3881ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: shr <4 x i32>
3882ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: shr <4 x i32>
3883ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3884ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sra */
3885ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sra(vsc, vuc);
3886ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsrab
3887ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsrab
3888ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3889ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sra(vuc, vuc);
3890ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsrab
3891ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsrab
3892ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3893ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sra(vs, vus);
3894ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsrah
3895ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsrah
3896ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3897ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sra(vus, vus);
3898ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsrah
3899ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsrah
3900ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3901ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sra(vi, vui);
3902ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsraw
3903ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsraw
3904ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3905ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sra(vui, vui);
3906ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsraw
3907ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsraw
3908ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3909ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsrab(vsc, vuc);
3910ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsrab
3911ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsrab
3912ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3913ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsrab(vuc, vuc);
3914ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsrab
3915ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsrab
3916ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3917ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsrah(vs, vus);
3918ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsrah
3919ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsrah
3920ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3921ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsrah(vus, vus);
3922ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsrah
3923ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsrah
3924ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3925ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsraw(vi, vui);
3926ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsraw
3927ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsraw
3928ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3929ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsraw(vui, vui);
3930ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsraw
3931ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsraw
3932ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3933ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_srl */
3934ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_srl(vsc, vuc);
3935ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3936ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3937ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3938ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_srl(vsc, vus);
3939ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3940ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3941ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3942ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_srl(vsc, vui);
3943ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3944ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3945ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3946ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_srl(vuc, vuc);
3947ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3948ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3949ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3950ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_srl(vuc, vus);
3951ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3952ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3953ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3954ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_srl(vuc, vui);
3955ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3956ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3957ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3958ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_srl(vbc, vuc);
3959ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3960ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3961ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3962ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_srl(vbc, vus);
3963ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3964ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3965ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3966ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_srl(vbc, vui);
3967ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3968ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3969ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3970ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_srl(vs, vuc);
3971ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3972ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3973ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3974ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_srl(vs, vus);
3975ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3976ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3977ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3978ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_srl(vs, vui);
3979ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3980ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3981ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3982ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_srl(vus, vuc);
3983ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3984ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3985ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3986ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_srl(vus, vus);
3987ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3988ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3989ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3990ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_srl(vus, vui);
3991ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3992ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3993ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3994ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_srl(vbs, vuc);
3995ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
3996ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
3997ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
3998ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_srl(vbs, vus);
3999ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4000ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4001ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4002ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_srl(vbs, vui);
4003ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4004ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4005ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4006ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_srl(vp, vuc);
4007ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4008ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4009ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4010ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_srl(vp, vus);
4011ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4012ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4013ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4014ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_srl(vp, vui);
4015ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4016ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4017ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4018ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_srl(vi, vuc);
4019ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4020ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4021ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4022ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_srl(vi, vus);
4023ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4024ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4025ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4026ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_srl(vi, vui);
4027ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4028ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4029ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4030ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_srl(vui, vuc);
4031ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4032ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4033ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4034ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_srl(vui, vus);
4035ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4036ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4037ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4038ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_srl(vui, vui);
4039ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4040ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4041ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4042ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_srl(vbi, vuc);
4043ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4044ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4045ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4046ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_srl(vbi, vus);
4047ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4048ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4049ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4050ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_srl(vbi, vui);
4051ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4052ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4053ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4054ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsr(vsc, vuc);
4055ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4056ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4057ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4058ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsr(vsc, vus);
4059ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4060ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4061ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4062ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsr(vsc, vui);
4063ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4064ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4065ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4066ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsr(vuc, vuc);
4067ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4068ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4069ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4070ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsr(vuc, vus);
4071ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4072ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4073ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4074ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsr(vuc, vui);
4075ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4076ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4077ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4078ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vsr(vbc, vuc);
4079ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4080ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4081ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4082ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vsr(vbc, vus);
4083ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4084ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4085ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4086ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vsr(vbc, vui);
4087ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4088ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4089ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4090ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsr(vs, vuc);
4091ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4092ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4093ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4094ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsr(vs, vus);
4095ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4096ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4097ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4098ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsr(vs, vui);
4099ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4100ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4101ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4102ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsr(vus, vuc);
4103ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4104ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4105ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4106ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsr(vus, vus);
4107ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4108ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4109ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4110ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsr(vus, vui);
4111ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4112ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4113ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4114ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vsr(vbs, vuc);
4115ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4116ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4117ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4118ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vsr(vbs, vus);
4119ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4120ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4121ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4122ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vsr(vbs, vui);
4123ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4124ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4125ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4126ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vsr(vp, vuc);
4127ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4128ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4129ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4130ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vsr(vp, vus);
4131ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4132ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4133ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4134ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vsr(vp, vui);
4135ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4136ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4137ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4138ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsr(vi, vuc);
4139ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4140ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4141ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4142ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsr(vi, vus);
4143ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4144ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4145ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4146ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsr(vi, vui);
4147ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4148ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4149ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4150ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsr(vui, vuc);
4151ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4152ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4153ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4154ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsr(vui, vus);
4155ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4156ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4157ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4158ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsr(vui, vui);
4159ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4160ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4161ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4162ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vsr(vbi, vuc);
4163ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4164ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4165ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4166ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vsr(vbi, vus);
4167ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4168ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4169ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4170ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vsr(vbi, vui);
4171ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsr
4172ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsr
4173ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4174ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sro */
4175ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sro(vsc, vsc);
4176ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4177ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4178ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4179ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sro(vsc, vuc);
4180ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4181ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4182ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4183ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sro(vuc, vsc);
4184ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4185ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4186ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4187ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sro(vuc, vuc);
4188ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4189ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4190ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4191ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sro(vs, vsc);
4192ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4193ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4194ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4195ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sro(vs, vuc);
4196ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4197ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4198ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4199ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sro(vus, vsc);
4200ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4201ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4202ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4203ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sro(vus, vuc);
4204ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4205ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4206ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4207ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_sro(vp, vsc);
4208ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4209ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4210ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4211ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_sro(vp, vuc);
4212ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4213ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4214ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4215ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sro(vi, vsc);
4216ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4217ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4218ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4219ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sro(vi, vuc);
4220ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4221ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4222ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4223ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sro(vui, vsc);
4224ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4225ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4226ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4227ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sro(vui, vuc);
4228ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4229ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4230ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4231ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_sro(vf, vsc);
4232ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4233ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4234ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4235ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_sro(vf, vuc);
4236ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4237ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4238ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4239ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsro(vsc, vsc);
4240ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4241ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4242ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4243ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsro(vsc, vuc);
4244ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4245ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4246ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4247ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsro(vuc, vsc);
4248ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4249ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4250ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4251ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsro(vuc, vuc);
4252ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4253ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4254ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4255ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsro(vs, vsc);
4256ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4257ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4258ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4259ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsro(vs, vuc);
4260ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4261ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4262ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4263ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsro(vus, vsc);
4264ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4265ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4266ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4267ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsro(vus, vuc);
4268ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4269ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4270ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4271ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vsro(vp, vsc);
4272ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4273ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4274ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4275ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_vsro(vp, vuc);
4276ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4277ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4278ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4279ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsro(vi, vsc);
4280ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4281ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4282ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4283ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsro(vi, vuc);
4284ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4285ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4286ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4287ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsro(vui, vsc);
4288ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4289ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4290ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4291ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsro(vui, vuc);
4292ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4293ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4294ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4295ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vsro(vf, vsc);
4296ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4297ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4298ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4299ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vsro(vf, vuc);
4300ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsro
4301ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsro
4302ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4303ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_st */
4304ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vsc, 0, &vsc);
4305ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4306ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4307ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4308ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vsc, 0, &param_sc);
4309ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4310ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4311ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4312ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vuc, 0, &vuc);
4313ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4314ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4315ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4316ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vuc, 0, &param_uc);
4317ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4318ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4319ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4320ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vbc, 0, &param_uc);
4321ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4322ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4323ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4324ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vbc, 0, &param_uc);
4325ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4326ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4327ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4328ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vbc, 0, &vbc);
4329ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4330ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4331ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4332ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vs, 0, &vs);
4333ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4334ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4335ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4336ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vs, 0, &param_s);
4337ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4338ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4339ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4340ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vus, 0, &vus);
4341ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4342ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4343ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4344ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vus, 0, &param_us);
4345ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4346ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4347ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4348ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vbs, 0, &param_s);
4349ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4350ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4351ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4352ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vbs, 0, &param_us);
4353ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4354ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4355ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4356ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vbs, 0, &vbs);
4357ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4358ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4359ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4360ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vp, 0, &param_s);
4361ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4362ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4363ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4364ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vp, 0, &param_us);
4365ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4366ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4367ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4368ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vp, 0, &vp);
4369ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4370ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4371ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4372ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vi, 0, &vi);
4373ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4374ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4375ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4376ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vi, 0, &param_i);
4377ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4378ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4379ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4380ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vui, 0, &vui);
4381ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4382ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4383ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4384ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vui, 0, &param_ui);
4385ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4386ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4387ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4388ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vbi, 0, &param_i);
4389ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4390ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4391ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4392ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vbi, 0, &param_ui);
4393ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4394ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4395ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4396ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vbi, 0, &vbi);
4397ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4398ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4399ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4400ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vf, 0, &vf);
4401ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4402ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4403ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4404ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_st(vf, 0, &param_f);
4405ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4406ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4407ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4408ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vsc, 0, &vsc);
4409ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4410ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4411ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4412ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vsc, 0, &param_sc);
4413ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4414ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4415ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4416ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vuc, 0, &vuc);
4417ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4418ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4419ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4420ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vuc, 0, &param_uc);
4421ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4422ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4423ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4424ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vbc, 0, &param_uc);
4425ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4426ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4427ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4428ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vbc, 0, &param_uc);
4429ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4430ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4431ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4432ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vbc, 0, &vbc);
4433ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4434ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4435ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4436ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vs, 0, &vs);
4437ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4438ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4439ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4440ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vs, 0, &param_s);
4441ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4442ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4443ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4444ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vus, 0, &vus);
4445ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4446ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4447ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4448ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vus, 0, &param_us);
4449ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4450ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4451ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4452ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vbs, 0, &param_s);
4453ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4454ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4455ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4456ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vbs, 0, &param_us);
4457ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4458ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4459ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4460ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vbs, 0, &vbs);
4461ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4462ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4463ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4464ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vp, 0, &param_s);
4465ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4466ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4467ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4468ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vp, 0, &param_us);
4469ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4470ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4471ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4472ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vp, 0, &vp);
4473ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4474ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4475ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4476ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vi, 0, &vi);
4477ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4478ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4479ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4480ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vi, 0, &param_i);
4481ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4482ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4483ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4484ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vui, 0, &vui);
4485ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4486ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4487ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4488ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vui, 0, &param_ui);
4489ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4490ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4491ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4492ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vbi, 0, &param_i);
4493ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4494ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4495ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4496ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vbi, 0, &param_ui);
4497ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4498ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4499ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4500ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vbi, 0, &vbi);
4501ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4502ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4503ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4504ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vf, 0, &vf);
4505ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4506ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4507ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4508ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvx(vf, 0, &param_f);
4509ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
4510ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
4511ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4512ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_ste */
4513ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vsc, 0, &param_sc);
4514ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvebx
4515ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvebx
4516ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4517ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vuc, 0, &param_uc);
4518ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvebx
4519ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvebx
4520ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4521ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vbc, 0, &param_sc);
4522ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvebx
4523ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvebx
4524ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4525ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vbc, 0, &param_uc);
4526ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvebx
4527ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvebx
4528ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4529ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vs, 0, &param_s);
4530ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4531ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4532ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4533ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vus, 0, &param_us);
4534ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4535ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4536ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4537ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vbs, 0, &param_s);
4538ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4539ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4540ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4541ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vbs, 0, &param_us);
4542ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4543ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4544ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4545ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vp, 0, &param_s);
4546ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4547ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4548ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4549ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vp, 0, &param_us);
4550ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4551ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4552ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4553ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vi, 0, &param_i);
4554ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvewx
4555ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvewx
4556ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4557ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vui, 0, &param_ui);
4558ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvewx
4559ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvewx
4560ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4561ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vbi, 0, &param_i);
4562ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvewx
4563ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvewx
4564ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4565ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vbi, 0, &param_ui);
4566ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvewx
4567ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvewx
4568ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4569ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_ste(vf, 0, &param_f);
4570ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvewx
4571ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvewx
4572ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4573ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvebx(vsc, 0, &param_sc);
4574ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvebx
4575ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvebx
4576ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4577ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvebx(vuc, 0, &param_uc);
4578ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvebx
4579ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvebx
4580ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4581ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvebx(vbc, 0, &param_sc);
4582ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvebx
4583ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvebx
4584ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4585ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvebx(vbc, 0, &param_uc);
4586ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvebx
4587ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvebx
4588ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4589ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvehx(vs, 0, &param_s);
4590ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4591ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4592ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4593ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvehx(vus, 0, &param_us);
4594ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4595ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4596ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4597ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvehx(vbs, 0, &param_s);
4598ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4599ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4600ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4601ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvehx(vbs, 0, &param_us);
4602ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4603ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4604ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4605ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvehx(vp, 0, &param_s);
4606ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4607ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4608ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4609ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvehx(vp, 0, &param_us);
4610ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvehx
4611ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvehx
4612ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4613ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvewx(vi, 0, &param_i);
4614ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvewx
4615ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvewx
4616ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4617ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvewx(vui, 0, &param_ui);
4618ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvewx
4619ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvewx
4620ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4621ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvewx(vbi, 0, &param_i);
4622ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvewx
4623ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvewx
4624ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4625ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvewx(vbi, 0, &param_ui);
4626ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvewx
4627ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvewx
4628ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4629ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvewx(vf, 0, &param_f);
4630ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvewx
4631ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvewx
4632ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4633ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_stl */
4634ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vsc, 0, &vsc);
4635ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4636ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4637ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4638ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vsc, 0, &param_sc);
4639ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4640ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4641ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4642ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vuc, 0, &vuc);
4643ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4644ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4645ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4646ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vuc, 0, &param_uc);
4647ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4648ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4649ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4650ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vbc, 0, &param_sc);
4651ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4652ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4653ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4654ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vbc, 0, &param_uc);
4655ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4656ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4657ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4658ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vbc, 0, &vbc);
4659ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4660ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4661ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4662ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vs, 0, &vs);
4663ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4664ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4665ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4666ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vs, 0, &param_s);
4667ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4668ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4669ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4670ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vus, 0, &vus);
4671ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4672ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4673ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4674ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vus, 0, &param_us);
4675ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4676ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4677ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4678ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vbs, 0, &param_s);
4679ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4680ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4681ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4682ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vbs, 0, &param_us);
4683ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4684ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4685ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4686ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vbs, 0, &vbs);
4687ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4688ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4689ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4690ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vp, 0, &param_s);
4691ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4692ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4693ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4694ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vp, 0, &param_us);
4695ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4696ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4697ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4698ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vp, 0, &vp);
4699ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4700ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4701ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4702ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vi, 0, &vi);
4703ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4704ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4705ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4706ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vi, 0, &param_i);
4707ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4708ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4709ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4710ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vui, 0, &vui);
4711ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4712ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4713ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4714ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vui, 0, &param_ui);
4715ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4716ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4717ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4718ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vbi, 0, &param_i);
4719ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4720ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4721ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4722ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vbi, 0, &param_ui);
4723ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4724ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4725ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4726ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vbi, 0, &vbi);
4727ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4728ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4729ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4730ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vf, 0, &vf);
4731ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4732ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4733ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4734ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stl(vf, 0, &param_f);
4735ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4736ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4737ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4738ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vsc, 0, &vsc);
4739ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4740ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4741ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4742ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vsc, 0, &param_sc);
4743ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4744ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4745ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4746ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vuc, 0, &vuc);
4747ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4748ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4749ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4750ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vuc, 0, &param_uc);
4751ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4752ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4753ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4754ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vbc, 0, &param_sc);
4755ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4756ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4757ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4758ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vbc, 0, &param_uc);
4759ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4760ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4761ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4762ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vbc, 0, &vbc);
4763ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4764ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4765ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4766ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vs, 0, &vs);
4767ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4768ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4769ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4770ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vs, 0, &param_s);
4771ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4772ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4773ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4774ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vus, 0, &vus);
4775ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4776ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4777ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4778ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vus, 0, &param_us);
4779ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4780ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4781ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4782ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vbs, 0, &param_s);
4783ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4784ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4785ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4786ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vbs, 0, &param_us);
4787ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4788ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4789ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4790ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vbs, 0, &vbs);
4791ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4792ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4793ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4794ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vp, 0, &param_s);
4795ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4796ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4797ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4798ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vp, 0, &param_us);
4799ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4800ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4801ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4802ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vp, 0, &vp);
4803ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4804ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4805ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4806ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vi, 0, &vi);
4807ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4808ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4809ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4810ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vi, 0, &param_i);
4811ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4812ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4813ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4814ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vui, 0, &vui);
4815ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4816ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4817ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4818ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vui, 0, &param_ui);
4819ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4820ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4821ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4822ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vbi, 0, &param_i);
4823ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4824ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4825ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4826ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vbi, 0, &param_ui);
4827ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4828ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4829ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4830ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vbi, 0, &vbi);
4831ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4832ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4833ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4834ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vf, 0, &vf);
4835ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4836ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4837ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4838ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvxl(vf, 0, &param_f);
4839ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
4840ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
4841ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4842ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sub */
4843ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sub(vsc, vsc);
4844ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4845ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4846ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4847ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sub(vbc, vsc);
4848ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4849ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4850ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4851ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_sub(vsc, vbc);
4852ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4853ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4854ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4855ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sub(vuc, vuc);
4856ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4857ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4858ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4859ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sub(vbc, vuc);
4860ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4861ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4862ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4863ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_sub(vuc, vbc);
4864ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4865ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4866ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4867ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sub(vs, vs);
4868ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4869ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4870ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4871ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sub(vbs, vs);
4872ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4873ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4874ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4875ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_sub(vs, vbs);
4876ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4877ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4878ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4879ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sub(vus, vus);
4880ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4881ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4882ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4883ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sub(vbs, vus);
4884ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4885ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4886ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4887ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_sub(vus, vbs);
4888ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4889ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4890ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4891ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sub(vi, vi);
4892ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4893ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4894ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4895ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sub(vbi, vi);
4896ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4897ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4898ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4899ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sub(vi, vbi);
4900ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4901ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4902ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4903ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sub(vui, vui);
4904ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4905ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4906ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4907ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sub(vbi, vui);
4908ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4909ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4910ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4911ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sub(vui, vbi);
4912ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4913ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4914ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4915ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_sub(vf, vf);
4916ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: fsub <4 x float>
4917ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: fsub <4 x float>
4918ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4919ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsububm(vsc, vsc);
4920ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4921ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4922ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4923ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsububm(vbc, vsc);
4924ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4925ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4926ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4927ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsububm(vsc, vbc);
4928ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4929ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4930ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4931ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsububm(vuc, vuc);
4932ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4933ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4934ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4935ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsububm(vbc, vuc);
4936ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4937ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4938ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4939ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsububm(vuc, vbc);
4940ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <16 x i8>
4941ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <16 x i8>
4942ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4943ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsubuhm(vs, vs);
4944ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4945ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4946ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4947ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsubuhm(vbs, vus);
4948ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4949ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4950ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4951ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsubuhm(vus, vbs);
4952ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4953ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4954ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4955ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsubuhm(vus, vus);
4956ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4957ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4958ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4959ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsubuhm(vbs, vus);
4960ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4961ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4962ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4963ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsubuhm(vus, vbs);
4964ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <8 x i16>
4965ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <8 x i16>
4966ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4967ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsubuwm(vi, vi);
4968ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4969ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4970ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4971ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsubuwm(vbi, vi);
4972ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4973ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4974ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4975ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsubuwm(vi, vbi);
4976ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4977ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4978ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4979ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsubuwm(vui, vui);
4980ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4981ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4982ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4983ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsubuwm(vbi, vui);
4984ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4985ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4986ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4987ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsubuwm(vui, vbi);
4988ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: sub <4 x i32>
4989ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: sub <4 x i32>
4990ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4991ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vsubfp(vf, vf);
4992ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: fsub <4 x float>
4993ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: fsub <4 x float>
4994ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
4995ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_subc */
4996ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_subc(vui, vui);
4997ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubcuw
4998ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubcuw
4999ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5000ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsubcuw(vui, vui);
5001ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubcuw
5002ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubcuw
5003ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5004ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_subs */
5005ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_subs(vsc, vsc);
5006ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsbs
5007ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsbs
5008ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5009ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_subs(vbc, vsc);
5010ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsbs
5011ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsbs
5012ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5013ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_subs(vsc, vbc);
5014ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsbs
5015ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsbs
5016ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5017ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_subs(vuc, vuc);
5018ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsububs
5019ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsububs
5020ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5021ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_subs(vbc, vuc);
5022ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsububs
5023ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsububs
5024ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5025ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_subs(vuc, vbc);
5026ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsububs
5027ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsububs
5028ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5029ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_subs(vs, vs);
5030ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubshs
5031ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubshs
5032ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5033ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_subs(vbs, vs);
5034ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubshs
5035ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubshs
5036ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5037ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_subs(vs, vbs);
5038ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubshs
5039ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubshs
5040ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5041ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_subs(vus, vus);
5042ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuhs
5043ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuhs
5044ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5045ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_subs(vbs, vus);
5046ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuhs
5047ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuhs
5048ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5049ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_subs(vus, vbs);
5050ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuhs
5051ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuhs
5052ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5053ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_subs(vi, vi);
5054ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsws
5055ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsws
5056ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5057ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_subs(vbi, vi);
5058ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsws
5059ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsws
5060ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5061ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_subs(vi, vbi);
5062ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsws
5063ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsws
5064ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5065ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_subs(vui, vui);
5066ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuws
5067ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuws
5068ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5069ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_subs(vbi, vui);
5070ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuws
5071ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuws
5072ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5073ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_subs(vui, vbi);
5074ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuws
5075ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuws
5076ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5077ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsubsbs(vsc, vsc);
5078ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsbs
5079ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsbs
5080ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5081ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsubsbs(vbc, vsc);
5082ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsbs
5083ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsbs
5084ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5085ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vsubsbs(vsc, vbc);
5086ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsbs
5087ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsbs
5088ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5089ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsububs(vuc, vuc);
5090ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsububs
5091ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsububs
5092ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5093ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsububs(vbc, vuc);
5094ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsububs
5095ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsububs
5096ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5097ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vsububs(vuc, vbc);
5098ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsububs
5099ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsububs
5100ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5101ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsubshs(vs, vs);
5102ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubshs
5103ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubshs
5104ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5105ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsubshs(vbs, vs);
5106ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubshs
5107ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubshs
5108ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5109ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vsubshs(vs, vbs);
5110ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubshs
5111ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubshs
5112ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5113ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsubuhs(vus, vus);
5114ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuhs
5115ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuhs
5116ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5117ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsubuhs(vbs, vus);
5118ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuhs
5119ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuhs
5120ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5121ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vsubuhs(vus, vbs);
5122ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuhs
5123ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuhs
5124ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5125ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsubsws(vi, vi);
5126ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsws
5127ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsws
5128ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5129ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsubsws(vbi, vi);
5130ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsws
5131ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsws
5132ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5133ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsubsws(vi, vbi);
5134ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubsws
5135ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubsws
5136ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5137ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsubuws(vui, vui);
5138ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuws
5139ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuws
5140ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5141ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsubuws(vbi, vui);
5142ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuws
5143ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuws
5144ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5145ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsubuws(vui, vbi);
5146ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsubuws
5147ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsubuws
5148ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5149ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sum4s */
5150ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sum4s(vsc, vi);
5151ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsum4sbs
5152ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsum4sbs
5153ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5154ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_sum4s(vuc, vui);
5155ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsum4ubs
5156ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsum4ubs
5157ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5158ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_sum4s(vs, vi);
5159ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsum4shs
5160ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsum4shs
5161ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5162ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsum4sbs(vsc, vi);
5163ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsum4sbs
5164ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsum4sbs
5165ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5166ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vsum4ubs(vuc, vui);
5167ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsum4ubs
5168ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsum4ubs
5169ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5170ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vsum4shs(vs, vi);
5171ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsum4shs
5172ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsum4shs
5173ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5174ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sum2s */
5175ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi = vec_sum2s(vi, vi);
5176ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsum2sws
5177ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5178ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsum2sws
5179ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5180ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5181ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi = vec_vsum2sws(vi, vi);
5182ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsum2sws
5183ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5184ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsum2sws
5185ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5186ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5187ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_sums */
5188ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi = vec_sums(vi, vi);
5189ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsumsws
5190ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5191ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsumsws
5192ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5193ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5194ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi = vec_vsumsws(vi, vi);
5195ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vsumsws
5196ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5197ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vsumsws
5198ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5199ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5200ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_trunc */
5201ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_trunc(vf);
5202ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrfiz
5203ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrfiz
5204ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5205ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf = vec_vrfiz(vf);
5206ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vrfiz
5207ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vrfiz
5208ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5209ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_unpackh */
5210ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_unpackh(vsc);
5211ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupkhsb
5212ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupklsb
5213ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5214ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_unpackh(vbc);
5215ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupkhsb
5216ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupklsb
5217ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5218ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_unpackh(vs);
5219ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupkhsh
5220ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupklsh
5221ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5222ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_unpackh(vbs);
5223ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupkhsh
5224ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupklsh
5225ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5226ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_unpackh(vp);
5227ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupkhpx
5228ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupklpx
5229ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5230ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vupkhsb(vsc);
5231ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupkhsb
5232ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupklsb
5233ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5234ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vupkhsb(vbc);
5235ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupkhsb
5236ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupklsb
5237ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5238ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vupkhsh(vs);
5239ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupkhsh
5240ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupklsh
5241ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5242ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vupkhsh(vbs);
5243ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupkhsh
5244ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupklsh
5245ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5246ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vupkhsh(vp);
5247ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupkhpx
5248ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupklpx
5249ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5250ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_unpackl */
5251ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_unpackl(vsc);
5252ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupklsb
5253ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupkhsb
5254ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5255ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_unpackl(vbc);
5256ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupklsb
5257ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupkhsb
5258ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5259ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_unpackl(vs);
5260ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupklsh
5261ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupkhsh
5262ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5263ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_unpackl(vbs);
5264ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupklsh
5265ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupkhsh
5266ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5267ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_unpackl(vp);
5268ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupklpx
5269ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupkhpx
5270ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5271ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vupklsb(vsc);
5272ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupklsb
5273ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupkhsb
5274ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5275ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vupklsb(vbc);
5276ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupklsb
5277ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupkhsb
5278ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5279ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vupklsh(vs);
5280ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupklsh
5281ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupkhsh
5282ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5283ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vupklsh(vbs);
5284ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupklsh
5285ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupkhsh
5286ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5287ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vupklsh(vp);
5288ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vupklpx
5289ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vupkhpx
5290ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5291ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_xor */
5292ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_xor(vsc, vsc);
5293ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5294ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5295ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5296ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_xor(vbc, vsc);
5297ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5298ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5299ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5300ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_xor(vsc, vbc);
5301ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5302ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5303ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5304ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_xor(vuc, vuc);
5305ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5306ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5307ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5308ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_xor(vbc, vuc);
5309ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5310ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5311ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5312ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_xor(vuc, vbc);
5313ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5314ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5315ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5316ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_xor(vbc, vbc);
5317ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5318ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5319ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5320ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_xor(vs, vs);
5321ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5322ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5323ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5324ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_xor(vbs, vs);
5325ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5326ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5327ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5328ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_xor(vs, vbs);
5329ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5330ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5331ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5332ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_xor(vus, vus);
5333ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5334ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5335ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5336ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_xor(vbs, vus);
5337ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5338ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5339ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5340ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_xor(vus, vbs);
5341ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5342ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5343ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5344ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_xor(vbs, vbs);
5345ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5346ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5347ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5348ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_xor(vi, vi);
5349ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5350ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5351ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5352ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_xor(vbi, vi);
5353ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5354ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5355ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5356ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_xor(vi, vbi);
5357ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5358ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5359ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5360ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_xor(vui, vui);
5361ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5362ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5363ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5364ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_xor(vbi, vui);
5365ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5366ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5367ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5368ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_xor(vui, vbi);
5369ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5370ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5371ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5372ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_xor(vbi, vbi);
5373ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5374ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5375ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5376ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_xor(vf, vf);
5377ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5378ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5379ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5380ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_xor(vbi, vf);
5381ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5382ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5383ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5384ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_xor(vf, vbi);
5385ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5386ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5387ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5388ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vxor(vsc, vsc);
5389ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5390ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5391ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5392ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vxor(vbc, vsc);
5393ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5394ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5395ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5396ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_vxor(vsc, vbc);
5397ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5398ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5399ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5400ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vxor(vuc, vuc);
5401ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5402ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5403ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5404ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vxor(vbc, vuc);
5405ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5406ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5407ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5408ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_vxor(vuc, vbc);
5409ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5410ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5411ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5412ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_vxor(vbc, vbc);
5413ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <16 x i8>
5414ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <16 x i8>
5415ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5416ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vxor(vs, vs);
5417ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5418ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5419ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5420ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vxor(vbs, vs);
5421ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5422ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5423ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5424ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_vxor(vs, vbs);
5425ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5426ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5427ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5428ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vxor(vus, vus);
5429ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5430ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5431ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5432ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vxor(vbs, vus);
5433ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5434ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5435ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5436ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_vxor(vus, vbs);
5437ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5438ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5439ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5440ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_vxor(vbs, vbs);
5441ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <8 x i16>
5442ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <8 x i16>
5443ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5444ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vxor(vi, vi);
5445ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5446ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5447ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5448ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vxor(vbi, vi);
5449ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5450ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5451ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5452ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_vxor(vi, vbi);
5453ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5454ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5455ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5456ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vxor(vui, vui);
5457ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5458ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5459ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5460ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vxor(vbi, vui);
5461ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5462ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5463ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5464ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_vxor(vui, vbi);
5465ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5466ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5467ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5468ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_vxor(vbi, vbi);
5469ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5470ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5471ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5472ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vxor(vf, vf);
5473ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5474ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5475ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5476ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vxor(vbi, vf);
5477ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5478ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5479ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5480ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_vxor(vf, vbi);
5481ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: xor <4 x i32>
5482ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: xor <4 x i32>
5483ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5484ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* ------------------------------ extensions -------------------------------------- */
5485ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5486ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_extract */
5487ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_sc = vec_extract(vsc, param_i);
5488ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: extractelement <16 x i8>
5489ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: extractelement <16 x i8>
5490ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5491ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_uc = vec_extract(vuc, param_i);
5492ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: extractelement <16 x i8>
5493ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: extractelement <16 x i8>
5494ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5495ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_s  = vec_extract(vs, param_i);
5496ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: extractelement <8 x i16>
5497ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: extractelement <8 x i16>
5498ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5499ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_us = vec_extract(vus, param_i);
5500ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: extractelement <8 x i16>
5501ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: extractelement <8 x i16>
5502ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5503ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i  = vec_extract(vi, param_i);
5504ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: extractelement <4 x i32>
5505ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: extractelement <4 x i32>
5506ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5507ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_ui = vec_extract(vui, param_i);
5508ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: extractelement <4 x i32>
5509ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: extractelement <4 x i32>
5510ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5511ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_f  = vec_extract(vf, param_i);
5512ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: extractelement <4 x float>
5513ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: extractelement <4 x float>
5514ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5515ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_insert */
5516ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_insert(param_sc, vsc, param_i);
5517ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <16 x i8>
5518ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <16 x i8>
5519ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5520ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_insert(param_uc, vuc, param_i);
5521ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <16 x i8>
5522ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <16 x i8>
5523ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5524ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_insert(param_s, vs, param_i);
5525ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <8 x i16>
5526ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <8 x i16>
5527ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5528ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_insert(param_us, vus, param_i);
5529ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <8 x i16>
5530ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <8 x i16>
5531ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5532ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_insert(param_i, vi, param_i);
5533ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <4 x i32>
5534ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <4 x i32>
5535ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5536ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_insert(param_ui, vui, param_i);
5537ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <4 x i32>
5538ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <4 x i32>
5539ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5540ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_insert(param_f, vf, param_i);
5541ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <4 x float>
5542ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <4 x float>
5543ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5544ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_lvlx */
5545ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvlx(0, &param_sc);
5546ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5547ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5548ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5549ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5550ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5551ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5552ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5553ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5554ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5555ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvlx(0, &vsc);
5556ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5557ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5558ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5559ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5560ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5561ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5562ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5563ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5564ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5565ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvlx(0, &param_uc);
5566ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5567ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5568ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5569ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5570ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5571ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5572ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5573ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5574ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5575ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvlx(0, &vuc);
5576ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5577ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5578ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5579ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5580ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5581ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5582ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5583ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5584ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5585ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_lvlx(0, &vbc);
5586ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5587ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5588ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5589ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5590ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5591ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5592ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5593ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5594ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5595ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvlx(0, &param_s);
5596ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5597ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5598ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5599ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5600ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5601ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5602ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5603ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5604ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5605ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvlx(0, &vs);
5606ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5607ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5608ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5609ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5610ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5611ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5612ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5613ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5614ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5615ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvlx(0, &param_us);
5616ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5617ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5618ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5619ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5620ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5621ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5622ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5623ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5624ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5625ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvlx(0, &vus);
5626ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5627ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5628ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5629ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5630ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5631ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5632ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5633ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5634ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5635ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_lvlx(0, &vbs);
5636ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5637ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5638ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5639ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5640ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5641ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5642ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5643ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5644ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5645ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_lvlx(0, &vp);
5646ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5647ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5648ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5649ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5650ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5651ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5652ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5653ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5654ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5655ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvlx(0, &param_i);
5656ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5657ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5658ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
5659ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5660ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5661ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5662ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
5663ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5664ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5665ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvlx(0, &vi);
5666ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5667ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5668ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
5669ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5670ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5671ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5672ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
5673ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5674ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5675ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvlx(0, &param_ui);
5676ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5677ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5678ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
5679ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5680ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5681ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5682ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
5683ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5684ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5685ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvlx(0, &vui);
5686ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5687ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5688ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
5689ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5690ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5691ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5692ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
5693ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5694ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5695ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_lvlx(0, &vbi);
5696ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5697ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
5698ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5699ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5700ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5701ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
5702ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5703ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5704ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5705ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_lvlx(0, &vf);
5706ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5707ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5708ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x float> zeroinitializer
5709ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5710ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5711ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5712ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x float> zeroinitializer
5713ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5714ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5715ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_lvlxl */
5716ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvlxl(0, &param_sc);
5717ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5718ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5719ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5720ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5721ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5722ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5723ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5724ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5725ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5726ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvlxl(0, &vsc);
5727ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5728ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5729ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5730ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5731ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5732ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5733ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5734ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5735ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5736ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvlxl(0, &param_uc);
5737ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5738ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5739ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5740ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5741ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5742ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5743ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5744ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5745ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5746ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvlxl(0, &vuc);
5747ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5748ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5749ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5750ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5751ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5752ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5753ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5754ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5755ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5756ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_lvlxl(0, &vbc);
5757ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5758ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5759ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5760ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5761ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5762ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5763ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5764ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5765ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5766ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvlxl(0, &param_s);
5767ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5768ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5769ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5770ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5771ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5772ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5773ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5774ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5775ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5776ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvlxl(0, &vs);
5777ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5778ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5779ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5780ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5781ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5782ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5783ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5784ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5785ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5786ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvlxl(0, &param_us);
5787ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5788ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5789ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5790ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5791ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5792ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5793ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5794ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5795ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5796ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvlxl(0, &vus);
5797ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5798ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5799ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5800ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5801ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5802ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5803ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5804ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5805ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5806ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_lvlxl(0, &vbs);
5807ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5808ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5809ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5810ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5811ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5812ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5813ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5814ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5815ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5816ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_lvlxl(0, &vp);
5817ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5818ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5819ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5820ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5821ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5822ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5823ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5824ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5825ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5826ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvlxl(0, &param_i);
5827ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5828ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5829ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
5830ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5831ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5832ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5833ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
5834ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5835ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5836ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvlxl(0, &vi);
5837ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5838ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5839ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
5840ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5841ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5842ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5843ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
5844ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5845ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5846ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvlxl(0, &param_ui);
5847ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5848ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5849ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
5850ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5851ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5852ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5853ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
5854ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5855ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5856ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvlxl(0, &vui);
5857ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5858ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5859ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
5860ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5861ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5862ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5863ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
5864ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5865ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5866ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_lvlxl(0, &vbi);
5867ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5868ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
5869ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5870ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5871ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5872ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
5873ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5874ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5875ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5876ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_lvlxl(0, &vf);
5877ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
5878ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5879ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x float> zeroinitializer
5880ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5881ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
5882ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5883ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x float> zeroinitializer
5884ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5885ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5886ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_lvrx */
5887ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvrx(0, &param_sc);
5888ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5889ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5890ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5891ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5892ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5893ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5894ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5895ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5896ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5897ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvrx(0, &vsc);
5898ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5899ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5900ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5901ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5902ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5903ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5904ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5905ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5906ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5907ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvrx(0, &param_uc);
5908ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5909ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5910ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5911ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5912ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5913ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5914ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5915ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5916ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5917ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvrx(0, &vuc);
5918ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5919ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5920ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5921ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5922ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5923ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5924ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5925ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5926ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5927ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_lvrx(0, &vbc);
5928ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
5929ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5930ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5931ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5932ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
5933ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5934ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5935ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5936ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5937ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvrx(0, &param_s);
5938ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5939ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5940ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5941ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5942ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5943ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5944ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5945ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5946ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5947ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvrx(0, &vs);
5948ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5949ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5950ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5951ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5952ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5953ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5954ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5955ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5956ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5957ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvrx(0, &param_us);
5958ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5959ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5960ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5961ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5962ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5963ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5964ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5965ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5966ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5967ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvrx(0, &vus);
5968ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5969ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5970ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5971ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5972ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5973ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5974ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5975ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5976ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5977ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_lvrx(0, &vbs);
5978ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5979ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5980ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5981ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5982ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5983ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5984ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5985ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5986ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5987ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_lvrx(0, &vp);
5988ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
5989ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5990ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
5991ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
5992ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
5993ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
5994ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
5995ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
5996ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
5997ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvrx(0, &param_i);
5998ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
5999ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6000ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6001ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6002ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6003ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6004ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6005ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6006ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6007ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvrx(0, &vi);
6008ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6009ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6010ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6011ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6012ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6013ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6014ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6015ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6016ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6017ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvrx(0, &param_ui);
6018ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6019ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6020ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6021ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6022ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6023ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6024ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6025ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6026ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6027ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvrx(0, &vui);
6028ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6029ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6030ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6031ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6032ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6033ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6034ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6035ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6036ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6037ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_lvrx(0, &vbi);
6038ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6039ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6040ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6041ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6042ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6043ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6044ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6045ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6046ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6047ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_lvrx(0, &vf);
6048ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6049ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6050ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x float> zeroinitializer
6051ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6052ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6053ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6054ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x float> zeroinitializer
6055ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6056ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6057ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_lvrxl */
6058ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvrxl(0, &param_sc);
6059ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6060ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6061ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6062ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6063ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6064ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6065ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6066ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6067ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6068ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_lvrxl(0, &vsc);
6069ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6070ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6071ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6072ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6073ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6074ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6075ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6076ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6077ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6078ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvrxl(0, &param_uc);
6079ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6080ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6081ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6082ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6083ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6084ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6085ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6086ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6087ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6088ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_lvrxl(0, &vuc);
6089ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6090ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6091ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6092ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6093ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6094ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6095ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6096ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6097ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6098ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbc = vec_lvrxl(0, &vbc);
6099ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6100ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6101ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6102ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6103ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6104ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6105ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6106ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6107ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6108ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvrxl(0, &param_s);
6109ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6110ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6111ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6112ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6113ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6114ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6115ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6116ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6117ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6118ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_lvrxl(0, &vs);
6119ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6120ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6121ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6122ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6123ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6124ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6125ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6126ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6127ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6128ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvrxl(0, &param_us);
6129ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6130ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6131ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6132ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6133ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6134ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6135ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6136ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6137ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6138ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_lvrxl(0, &vus);
6139ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6140ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6141ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6142ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6143ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6144ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6145ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6146ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6147ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6148ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbs = vec_lvrxl(0, &vbs);
6149ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6150ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6151ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6152ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6153ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6154ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6155ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6156ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6157ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6158ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vp  = vec_lvrxl(0, &vp);
6159ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6160ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6161ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6162ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6163ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6164ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6165ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6166ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6167ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6168ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvrxl(0, &param_i);
6169ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6170ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6171ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6172ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6173ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6174ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6175ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6176ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6177ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6178ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_lvrxl(0, &vi);
6179ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6180ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6181ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6182ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6183ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6184ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6185ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6186ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6187ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6188ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvrxl(0, &param_ui);
6189ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6190ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6191ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6192ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6193ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6194ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6195ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6196ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6197ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6198ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_lvrxl(0, &vui);
6199ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6200ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6201ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6202ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6203ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6204ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6205ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6206ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6207ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6208ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vbi = vec_lvrxl(0, &vbi);
6209ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6210ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6211ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6212ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6213ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6214ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6215ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6216ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6217ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6218ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_lvrxl(0, &vf);
6219ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvxl
6220ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6221ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x float> zeroinitializer
6222ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6223ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvxl
6224ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6225ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x float> zeroinitializer
6226ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6227ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6228ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_stvlx */
6229ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vsc, 0, &param_sc);
6230ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6231ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6232ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6233ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6234ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6235ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6236ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6237ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6238ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6239ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6240ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6241ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6242ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6243ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6244ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6245ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vsc, 0, &vsc);
6246ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6247ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6248ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6249ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6250ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6251ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6252ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6253ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6254ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6255ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6256ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6257ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6258ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6259ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6260ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6261ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vuc, 0, &param_uc);
6262ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6263ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6264ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6265ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6266ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6267ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6268ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6269ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6270ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6271ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6272ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6273ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6274ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6275ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6276ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6277ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vuc, 0, &vuc);
6278ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6279ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6280ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6281ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6282ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6283ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6284ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6285ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6286ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6287ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6288ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6289ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6290ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6291ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6292ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6293ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vbc, 0, &vbc);
6294ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6295ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6296ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6297ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6298ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6299ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6300ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6301ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6302ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6303ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6304ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6305ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6306ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6307ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6308ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6309ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vs, 0, &param_s);
6310ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6311ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6312ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6313ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6314ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6315ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6316ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6317ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6318ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6319ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6320ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6321ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6322ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6323ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6324ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6325ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vs, 0, &vs);
6326ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6327ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6328ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6329ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6330ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6331ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6332ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6333ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6334ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6335ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6336ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6337ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6338ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6339ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6340ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6341ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vus, 0, &param_us);
6342ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6343ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6344ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6345ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6346ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6347ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6348ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6349ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6350ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6351ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6352ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6353ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6354ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6355ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6356ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6357ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vus, 0, &vus);
6358ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6359ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6360ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6361ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6362ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6363ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6364ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6365ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6366ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6367ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6368ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6369ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6370ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6371ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6372ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6373ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vbs, 0, &vbs);
6374ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6375ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6376ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6377ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6378ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6379ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6380ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6381ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6382ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6383ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6384ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6385ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6386ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6387ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6388ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6389ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vp, 0, &vp);
6390ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6391ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6392ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6393ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6394ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6395ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6396ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6397ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6398ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6399ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6400ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6401ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6402ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6403ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6404ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6405ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vi, 0, &param_i);
6406ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6407ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6408ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6409ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6410ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6411ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6412ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6413ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6414ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6415ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6416ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6417ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6418ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6419ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6420ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6421ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vi, 0, &vi);
6422ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6423ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6424ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6425ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6426ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6427ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6428ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6429ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6430ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6431ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6432ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6433ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6434ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6435ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6436ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6437ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vui, 0, &param_ui);
6438ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6439ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6440ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6441ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6442ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6443ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6444ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6445ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6446ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6447ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6448ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6449ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6450ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6451ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6452ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6453ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vui, 0, &vui);
6454ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6455ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6456ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6457ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6458ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6459ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6460ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6461ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6462ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6463ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6464ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6465ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6466ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6467ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6468ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6469ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vbi, 0, &vbi);
6470ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6471ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6472ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6473ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6474ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6475ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6476ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6477ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6478ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6479ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6480ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6481ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6482ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6483ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6484ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6485ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlx(vf, 0, &vf);
6486ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6487ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6488ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x float> zeroinitializer
6489ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6490ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6491ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6492ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6493ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6494ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6495ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x float> zeroinitializer
6496ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6497ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6498ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6499ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6500ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6501ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_stvlxl */
6502ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vsc, 0, &param_sc);
6503ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6504ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6505ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6506ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6507ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6508ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6509ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6510ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6511ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6512ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6513ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6514ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6515ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6516ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6517ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6518ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vsc, 0, &vsc);
6519ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6520ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6521ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6522ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6523ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6524ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6525ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6526ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6527ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6528ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6529ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6530ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6531ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6532ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6533ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6534ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vuc, 0, &param_uc);
6535ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6536ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6537ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6538ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6539ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6540ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6541ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6542ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6543ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6544ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6545ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6546ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6547ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6548ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6549ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6550ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vuc, 0, &vuc);
6551ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6552ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6553ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6554ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6555ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6556ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6557ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6558ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6559ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6560ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6561ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6562ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6563ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6564ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6565ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6566ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vbc, 0, &vbc);
6567ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6568ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6569ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6570ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6571ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6572ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6573ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6574ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6575ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6576ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6577ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6578ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6579ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6580ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6581ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6582ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vs, 0, &param_s);
6583ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6584ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6585ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6586ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6587ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6588ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6589ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6590ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6591ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6592ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6593ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6594ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6595ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6596ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6597ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6598ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vs, 0, &vs);
6599ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6600ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6601ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6602ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6603ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6604ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6605ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6606ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6607ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6608ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6609ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6610ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6611ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6612ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6613ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6614ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vus, 0, &param_us);
6615ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6616ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6617ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6618ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6619ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6620ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6621ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6622ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6623ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6624ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6625ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6626ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6627ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6628ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6629ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6630ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vus, 0, &vus);
6631ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6632ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6633ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6634ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6635ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6636ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6637ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6638ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6639ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6640ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6641ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6642ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6643ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6644ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6645ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6646ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vbs, 0, &vbs);
6647ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6648ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6649ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6650ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6651ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6652ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6653ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6654ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6655ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6656ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6657ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6658ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6659ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6660ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6661ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6662ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vp, 0, &vp);
6663ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6664ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6665ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6666ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6667ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6668ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6669ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6670ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6671ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6672ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6673ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6674ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6675ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6676ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6677ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6678ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vi, 0, &param_i);
6679ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6680ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6681ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6682ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6683ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6684ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6685ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6686ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6687ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6688ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6689ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6690ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6691ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6692ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6693ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6694ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vi, 0, &vi);
6695ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6696ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6697ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6698ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6699ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6700ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6701ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6702ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6703ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6704ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6705ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6706ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6707ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6708ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6709ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6710ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vui, 0, &param_ui);
6711ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6712ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6713ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6714ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6715ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6716ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6717ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6718ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6719ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6720ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6721ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6722ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6723ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6724ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6725ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6726ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vui, 0, &vui);
6727ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6728ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6729ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6730ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6731ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6732ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6733ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6734ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6735ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6736ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6737ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6738ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6739ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6740ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6741ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6742ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vbi, 0, &vbi);
6743ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6744ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6745ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6746ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6747ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6748ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6749ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6750ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6751ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6752ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6753ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6754ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6755ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6756ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6757ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6758ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvlxl(vf, 0, &vf);
6759ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6760ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6761ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x float> zeroinitializer
6762ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6763ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6764ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6765ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
6766ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6767ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6768ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x float> zeroinitializer
6769ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6770ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6771ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6772ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
6773ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6774ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_stvrx */
6775ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vsc, 0, &param_sc);
6776ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6777ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6778ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6779ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6780ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6781ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6782ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6783ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6784ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6785ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6786ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6787ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6788ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6789ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6790ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6791ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vsc, 0, &vsc);
6792ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6793ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6794ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6795ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6796ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6797ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6798ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6799ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6800ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6801ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6802ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6803ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6804ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6805ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6806ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6807ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vuc, 0, &param_uc);
6808ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6809ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6810ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6811ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6812ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6813ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6814ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6815ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6816ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6817ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6818ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6819ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6820ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6821ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6822ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6823ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vuc, 0, &vuc);
6824ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6825ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6826ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6827ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6828ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6829ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6830ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6831ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6832ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6833ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6834ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6835ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6836ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6837ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6838ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6839ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vbc, 0, &vbc);
6840ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6841ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
6842ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6843ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6844ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6845ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6846ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6847ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6848ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
6849ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6850ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6851ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6852ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6853ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6854ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6855ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vs, 0, &param_s);
6856ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6857ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6858ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6859ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6860ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6861ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6862ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6863ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6864ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6865ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6866ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6867ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6868ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6869ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6870ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6871ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vs, 0, &vs);
6872ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6873ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6874ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6875ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6876ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6877ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6878ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6879ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6880ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6881ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6882ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6883ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6884ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6885ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6886ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6887ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vus, 0, &param_us);
6888ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6889ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6890ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6891ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6892ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6893ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6894ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6895ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6896ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6897ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6898ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6899ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6900ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6901ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6902ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6903ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vus, 0, &vus);
6904ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6905ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6906ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6907ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6908ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6909ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6910ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6911ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6912ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6913ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6914ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6915ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6916ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6917ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6918ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6919ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vbs, 0, &vbs);
6920ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6921ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6922ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6923ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6924ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6925ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6926ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6927ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6928ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6929ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6930ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6931ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6932ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6933ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6934ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6935ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vp, 0, &vp);
6936ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6937ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
6938ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6939ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6940ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6941ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6942ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6943ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6944ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
6945ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6946ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6947ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6948ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6949ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6950ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6951ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vi, 0, &param_i);
6952ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6953ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6954ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6955ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6956ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6957ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6958ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6959ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6960ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6961ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6962ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6963ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6964ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6965ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6966ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6967ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vi, 0, &vi);
6968ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6969ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6970ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6971ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6972ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6973ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6974ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6975ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6976ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6977ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6978ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6979ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6980ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6981ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6982ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6983ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vui, 0, &param_ui);
6984ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
6985ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
6986ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
6987ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6988ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
6989ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
6990ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
6991ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
6992ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
6993ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
6994ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6995ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
6996ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
6997ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
6998ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
6999ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vui, 0, &vui);
7000ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7001ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7002ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
7003ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7004ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7005ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7006ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
7007ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7008ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7009ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
7010ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7011ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7012ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7013ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
7014ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7015ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vbi, 0, &vbi);
7016ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7017ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
7018ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7019ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7020ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7021ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7022ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
7023ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7024ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
7025ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7026ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7027ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7028ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7029ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
7030ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7031ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrx(vf, 0, &vf);
7032ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7033ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7034ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x float> zeroinitializer
7035ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7036ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7037ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7038ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvx
7039ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7040ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7041ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x float> zeroinitializer
7042ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7043ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7044ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7045ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvx
7046ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7047ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_stvrxl */
7048ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vsc, 0, &param_sc);
7049ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7050ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7051ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
7052ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7053ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7054ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7055ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7056ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7057ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7058ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
7059ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7060ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7061ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7062ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7063ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7064ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vsc, 0, &vsc);
7065ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7066ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7067ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
7068ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7069ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7070ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7071ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7072ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7073ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7074ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
7075ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7076ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7077ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7078ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7079ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7080ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vuc, 0, &param_uc);
7081ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7082ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7083ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
7084ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7085ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7086ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7087ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7088ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7089ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7090ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
7091ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7092ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7093ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7094ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7095ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7096ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vuc, 0, &vuc);
7097ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7098ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7099ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
7100ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7101ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7102ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7103ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7104ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7105ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7106ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
7107ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7108ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7109ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7110ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7111ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7112ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vbc, 0, &vbc);
7113ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7114ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
7115ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7116ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7117ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7118ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7119ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7120ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7121ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
7122ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7123ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7124ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7125ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7126ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7127ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7128ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vs, 0, &param_s);
7129ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7130ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7131ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
7132ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7133ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7134ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7135ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7136ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7137ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7138ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
7139ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7140ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7141ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7142ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7143ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7144ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vs, 0, &vs);
7145ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7146ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7147ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
7148ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7149ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7150ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7151ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7152ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7153ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7154ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
7155ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7156ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7157ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7158ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7159ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7160ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vus, 0, &param_us);
7161ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7162ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7163ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
7164ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7165ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7166ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7167ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7168ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7169ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7170ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
7171ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7172ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7173ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7174ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7175ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7176ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vus, 0, &vus);
7177ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7178ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7179ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
7180ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7181ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7182ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7183ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7184ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7185ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7186ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
7187ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7188ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7189ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7190ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7191ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7192ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vbs, 0, &vbs);
7193ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7194ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
7195ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7196ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7197ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7198ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7199ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7200ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7201ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
7202ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7203ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7204ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7205ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7206ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7207ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7208ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vp, 0, &vp);
7209ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7210ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
7211ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7212ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7213ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7214ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7215ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7216ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7217ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
7218ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7219ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7220ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7221ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7222ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7223ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7224ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vi, 0, &param_i);
7225ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7226ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7227ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
7228ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7229ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7230ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7231ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7232ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7233ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7234ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
7235ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7236ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7237ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7238ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7239ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7240ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vi, 0, &vi);
7241ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7242ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7243ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
7244ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7245ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7246ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7247ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7248ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7249ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7250ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
7251ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7252ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7253ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7254ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7255ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7256ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vui, 0, &param_ui);
7257ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7258ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7259ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
7260ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7261ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7262ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7263ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7264ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7265ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7266ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
7267ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7268ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7269ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7270ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7271ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7272ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vui, 0, &vui);
7273ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7274ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7275ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
7276ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7277ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7278ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7279ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7280ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7281ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7282ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
7283ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7284ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7285ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7286ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7287ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7288ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vbi, 0, &vbi);
7289ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7290ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
7291ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7292ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7293ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7294ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7295ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7296ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7297ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
7298ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7299ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7300ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7301ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7302ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7303ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7304ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vec_stvrxl(vf, 0, &vf);
7305ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvx
7306ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsl
7307ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x float> zeroinitializer
7308ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7309ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.lvsr
7310ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vperm
7311ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.stvxl
7312ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvx
7313ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsl
7314ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x float> zeroinitializer
7315ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7316ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.lvsr
7317ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vperm
7318ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.stvxl
7319ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7320ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_promote */
7321ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_promote(param_sc, 0);
7322ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
7323ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <16 x i8>
7324ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
7325ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <16 x i8>
7326ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7327ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_promote(param_uc, 0);
7328ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <16 x i8> zeroinitializer
7329ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <16 x i8>
7330ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <16 x i8> zeroinitializer
7331ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <16 x i8>
7332ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7333ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_promote(param_s, 0);
7334ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
7335ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <8 x i16>
7336ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
7337ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <8 x i16>
7338ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7339ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_promote(param_us, 0);
7340ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <8 x i16> zeroinitializer
7341ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <8 x i16>
7342ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <8 x i16> zeroinitializer
7343ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <8 x i16>
7344ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7345ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_promote(param_i, 0);
7346ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
7347ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <4 x i32>
7348ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
7349ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <4 x i32>
7350ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7351ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_promote(param_ui, 0);
7352ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x i32> zeroinitializer
7353ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <4 x i32>
7354ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x i32> zeroinitializer
7355ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <4 x i32>
7356ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7357ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_promote(param_f, 0);
7358ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: store <4 x float> zeroinitializer
7359ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <4 x float>
7360ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: store <4 x float> zeroinitializer
7361ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <4 x float>
7362ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7363ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_splats */
7364ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vsc = vec_splats(param_sc);
7365ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <16 x i8>
7366ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <16 x i8>
7367ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7368ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vuc = vec_splats(param_uc);
7369ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <16 x i8>
7370ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <16 x i8>
7371ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7372ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vs  = vec_splats(param_s);
7373ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <8 x i16>
7374ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <8 x i16>
7375ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7376ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vus = vec_splats(param_us);
7377ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <8 x i16>
7378ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <8 x i16>
7379ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7380ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vi  = vec_splats(param_i);
7381ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <4 x i32>
7382ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <4 x i32>
7383ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7384ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vui = vec_splats(param_ui);
7385ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <4 x i32>
7386ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <4 x i32>
7387ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7388ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_vf  = vec_splats(param_f);
7389ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: insertelement <4 x float>
7390ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: insertelement <4 x float>
7391ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7392ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* ------------------------------ predicates -------------------------------------- */
7393ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7394ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_eq */
7395ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vsc, vsc);
7396ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7397ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7398ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7399ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vsc, vbc);
7400ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7401ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7402ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7403ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vuc, vuc);
7404ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7405ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7406ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7407ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vuc, vbc);
7408ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7409ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7410ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7411ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vbc, vsc);
7412ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7413ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7414ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7415ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vbc, vuc);
7416ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7417ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7418ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7419ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vbc, vbc);
7420ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7421ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7422ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7423ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vs, vs);
7424ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7425ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7426ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7427ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vs, vbs);
7428ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7429ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7430ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7431ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vus, vus);
7432ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7433ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7434ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7435ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vus, vbs);
7436ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7437ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7438ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7439ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vbs, vs);
7440ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7441ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7442ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7443ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vbs, vus);
7444ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7445ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7446ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7447ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vbs, vbs);
7448ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7449ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7450ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7451ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vp, vp);
7452ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7453ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7454ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7455ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vi, vi);
7456ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7457ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7458ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7459ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vi, vbi);
7460ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7461ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7462ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7463ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vui, vui);
7464ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7465ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7466ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7467ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vui, vbi);
7468ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7469ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7470ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7471ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vbi, vi);
7472ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7473ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7474ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7475ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vbi, vui);
7476ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7477ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7478ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7479ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vbi, vbi);
7480ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7481ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7482ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7483ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_eq(vf, vf);
7484ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp.p
7485ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp.p
7486ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7487ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_ge */
7488ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vsc, vsc);
7489ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
7490ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
7491ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7492ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vsc, vbc);
7493ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
7494ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
7495ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7496ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vuc, vuc);
7497ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7498ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7499ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7500ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vuc, vbc);
7501ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7502ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7503ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7504ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vbc, vsc);
7505ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7506ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7507ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7508ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vbc, vuc);
7509ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7510ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7511ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7512ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vbc, vbc);
7513ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7514ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7515ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7516ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vs, vs);
7517ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
7518ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
7519ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7520ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vs, vbs);
7521ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
7522ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
7523ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7524ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vus, vus);
7525ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7526ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7527ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7528ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vus, vbs);
7529ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7530ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7531ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7532ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vbs, vs);
7533ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7534ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7535ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7536ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vbs, vus);
7537ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7538ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7539ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7540ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vbs, vbs);
7541ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7542ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7543ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7544ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vi, vi);
7545ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
7546ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
7547ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7548ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vi, vbi);
7549ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
7550ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
7551ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7552ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vui, vui);
7553ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7554ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7555ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7556ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vui, vbi);
7557ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7558ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7559ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7560ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vbi, vi);
7561ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7562ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7563ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7564ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vbi, vui);
7565ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7566ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7567ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7568ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vbi, vbi);
7569ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7570ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7571ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7572ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ge(vf, vf);
7573ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp.p
7574ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp.p
7575ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7576ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_gt */
7577ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vsc, vsc);
7578ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
7579ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
7580ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7581ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vsc, vbc);
7582ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
7583ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
7584ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7585ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vuc, vuc);
7586ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7587ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7588ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7589ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vuc, vbc);
7590ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7591ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7592ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7593ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vbc, vsc);
7594ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7595ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7596ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7597ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vbc, vuc);
7598ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7599ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7600ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7601ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vbc, vbc);
7602ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7603ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7604ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7605ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vs, vs);
7606ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
7607ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
7608ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7609ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vs, vbs);
7610ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
7611ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
7612ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7613ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vus, vus);
7614ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7615ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7616ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7617ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vus, vbs);
7618ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7619ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7620ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7621ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vbs, vs);
7622ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7623ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7624ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7625ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vbs, vus);
7626ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7627ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7628ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7629ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vbs, vbs);
7630ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7631ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7632ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7633ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vi, vi);
7634ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
7635ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
7636ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7637ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vi, vbi);
7638ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
7639ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
7640ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7641ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vui, vui);
7642ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7643ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7644ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7645ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vui, vbi);
7646ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7647ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7648ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7649ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vbi, vi);
7650ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7651ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7652ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7653ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vbi, vui);
7654ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7655ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7656ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7657ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vbi, vbi);
7658ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7659ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7660ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7661ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_gt(vf, vf);
7662ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp.p
7663ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp.p
7664ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7665ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_in */
7666ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_in(vf, vf);
7667ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpbfp.p
7668ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpbfp.p
7669ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7670ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_le */
7671ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vsc, vsc);
7672ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
7673ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
7674ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7675ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vsc, vbc);
7676ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
7677ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
7678ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7679ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vuc, vuc);
7680ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7681ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7682ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7683ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vuc, vbc);
7684ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7685ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7686ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7687ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vbc, vsc);
7688ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7689ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7690ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7691ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vbc, vuc);
7692ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7693ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7694ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7695ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vbc, vbc);
7696ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7697ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7698ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7699ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vs, vs);
7700ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
7701ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
7702ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7703ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vs, vbs);
7704ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
7705ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
7706ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7707ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vus, vus);
7708ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7709ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7710ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7711ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vus, vbs);
7712ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7713ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7714ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7715ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vbs, vs);
7716ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7717ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7718ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7719ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vbs, vus);
7720ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7721ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7722ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7723ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vbs, vbs);
7724ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7725ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7726ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7727ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vi, vi);
7728ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
7729ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
7730ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7731ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vi, vbi);
7732ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
7733ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
7734ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7735ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vui, vui);
7736ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7737ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7738ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7739ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vui, vbi);
7740ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7741ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7742ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7743ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vbi, vi);
7744ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7745ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7746ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7747ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vbi, vui);
7748ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7749ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7750ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7751ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vbi, vbi);
7752ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7753ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7754ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7755ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_le(vf, vf);
7756ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp.p
7757ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp.p
7758ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7759ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_lt */
7760ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vsc, vsc);
7761ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
7762ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
7763ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7764ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vsc, vbc);
7765ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
7766ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
7767ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7768ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vuc, vuc);
7769ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7770ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7771ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7772ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vuc, vbc);
7773ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7774ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7775ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7776ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vbc, vsc);
7777ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7778ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7779ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7780ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vbc, vuc);
7781ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7782ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7783ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7784ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vbc, vbc);
7785ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
7786ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
7787ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7788ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vs, vs);
7789ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
7790ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
7791ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7792ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vs, vbs);
7793ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
7794ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
7795ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7796ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vus, vus);
7797ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7798ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7799ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7800ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vus, vbs);
7801ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7802ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7803ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7804ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vbs, vs);
7805ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7806ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7807ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7808ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vbs, vus);
7809ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7810ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7811ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7812ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vbs, vbs);
7813ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
7814ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
7815ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7816ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vi, vi);
7817ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
7818ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
7819ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7820ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vi, vbi);
7821ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
7822ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
7823ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7824ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vui, vui);
7825ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7826ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7827ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7828ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vui, vbi);
7829ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7830ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7831ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7832ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vbi, vi);
7833ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7834ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7835ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7836ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vbi, vui);
7837ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7838ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7839ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7840ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vbi, vbi);
7841ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
7842ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
7843ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7844ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_lt(vf, vf);
7845ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp.p
7846ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp.p
7847ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7848ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_nan */
7849ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_nan(vf);
7850ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp.p
7851ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp.p
7852ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7853ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /*  vec_all_ne */
7854ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vsc, vsc);
7855ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7856ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7857ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7858ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vsc, vbc);
7859ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7860ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7861ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7862ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vuc, vuc);
7863ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7864ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7865ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7866ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vuc, vbc);
7867ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7868ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7869ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7870ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vbc, vsc);
7871ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7872ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7873ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7874ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vbc, vuc);
7875ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7876ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7877ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7878ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vbc, vbc);
7879ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7880ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7881ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7882ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vs, vs);
7883ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7884ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7885ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7886ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vs, vbs);
7887ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7888ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7889ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7890ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vus, vus);
7891ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7892ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7893ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7894ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vus, vbs);
7895ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7896ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7897ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7898ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vbs, vs);
7899ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7900ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7901ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7902ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vbs, vus);
7903ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7904ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7905ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7906ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vbs, vbs);
7907ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7908ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7909ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7910ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vp, vp);
7911ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
7912ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
7913ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7914ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vi, vi);
7915ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7916ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7917ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7918ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vi, vbi);
7919ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7920ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7921ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7922ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vui, vui);
7923ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7924ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7925ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7926ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vui, vbi);
7927ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7928ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7929ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7930ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vbi, vi);
7931ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7932ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7933ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7934ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vbi, vui);
7935ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7936ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7937ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7938ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vbi, vbi);
7939ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
7940ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
7941ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7942ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ne(vf, vf);
7943ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp.p
7944ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp.p
7945ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7946ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_nge */
7947ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_nge(vf, vf);
7948ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp.p
7949ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp.p
7950ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7951ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_ngt */
7952ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_ngt(vf, vf);
7953ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp.p
7954ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp.p
7955ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7956ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_nle */
7957ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_nle(vf, vf);
7958ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp.p
7959ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp.p
7960ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7961ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_nlt */
7962ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_nlt(vf, vf);
7963ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp.p
7964ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp.p
7965ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7966ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_all_numeric */
7967ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_all_numeric(vf);
7968ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp.p
7969ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp.p
7970ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7971ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /*  vec_any_eq */
7972ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vsc, vsc);
7973ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7974ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7975ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7976ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vsc, vbc);
7977ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7978ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7979ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7980ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vuc, vuc);
7981ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7982ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7983ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7984ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vuc, vbc);
7985ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7986ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7987ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7988ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vbc, vsc);
7989ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7990ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7991ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7992ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vbc, vuc);
7993ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7994ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7995ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
7996ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vbc, vbc);
7997ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
7998ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
7999ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8000ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vs, vs);
8001ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8002ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8003ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8004ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vs, vbs);
8005ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8006ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8007ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8008ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vus, vus);
8009ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8010ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8011ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8012ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vus, vbs);
8013ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8014ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8015ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8016ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vbs, vs);
8017ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8018ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8019ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8020ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vbs, vus);
8021ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8022ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8023ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8024ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vbs, vbs);
8025ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8026ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8027ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8028ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vp, vp);
8029ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8030ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8031ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8032ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vi, vi);
8033ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8034ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8035ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8036ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vi, vbi);
8037ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8038ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8039ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8040ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vui, vui);
8041ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8042ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8043ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8044ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vui, vbi);
8045ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8046ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8047ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8048ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vbi, vi);
8049ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8050ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8051ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8052ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vbi, vui);
8053ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8054ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8055ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8056ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vbi, vbi);
8057ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8058ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8059ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8060ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_eq(vf, vf);
8061ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp.p
8062ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp.p
8063ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8064ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_ge */
8065ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vsc, vsc);
8066ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
8067ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
8068ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8069ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vsc, vbc);
8070ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
8071ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
8072ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8073ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vuc, vuc);
8074ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8075ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8076ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8077ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vuc, vbc);
8078ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8079ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8080ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8081ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vbc, vsc);
8082ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8083ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8084ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8085ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vbc, vuc);
8086ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8087ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8088ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8089ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vbc, vbc);
8090ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8091ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8092ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8093ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vs, vs);
8094ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
8095ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
8096ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8097ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vs, vbs);
8098ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
8099ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
8100ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8101ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vus, vus);
8102ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8103ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8104ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8105ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vus, vbs);
8106ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8107ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8108ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8109ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vbs, vs);
8110ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8111ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8112ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8113ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vbs, vus);
8114ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8115ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8116ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8117ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vbs, vbs);
8118ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8119ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8120ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8121ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vi, vi);
8122ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
8123ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
8124ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8125ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vi, vbi);
8126ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
8127ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
8128ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8129ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vui, vui);
8130ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8131ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8132ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8133ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vui, vbi);
8134ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8135ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8136ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8137ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vbi, vi);
8138ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8139ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8140ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8141ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vbi, vui);
8142ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8143ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8144ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8145ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vbi, vbi);
8146ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8147ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8148ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8149ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ge(vf, vf);
8150ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp.p
8151ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp.p
8152ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8153ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_gt */
8154ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vsc, vsc);
8155ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
8156ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
8157ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8158ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vsc, vbc);
8159ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
8160ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
8161ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8162ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vuc, vuc);
8163ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8164ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8165ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8166ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vuc, vbc);
8167ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8168ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8169ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8170ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vbc, vsc);
8171ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8172ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8173ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8174ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vbc, vuc);
8175ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8176ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8177ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8178ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vbc, vbc);
8179ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8180ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8181ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8182ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vs, vs);
8183ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
8184ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
8185ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8186ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vs, vbs);
8187ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
8188ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
8189ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8190ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vus, vus);
8191ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8192ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8193ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8194ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vus, vbs);
8195ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8196ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8197ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8198ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vbs, vs);
8199ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8200ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8201ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8202ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vbs, vus);
8203ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8204ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8205ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8206ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vbs, vbs);
8207ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8208ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8209ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8210ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vi, vi);
8211ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
8212ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
8213ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8214ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vi, vbi);
8215ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
8216ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
8217ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8218ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vui, vui);
8219ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8220ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8221ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8222ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vui, vbi);
8223ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8224ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8225ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8226ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vbi, vi);
8227ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8228ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8229ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8230ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vbi, vui);
8231ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8232ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8233ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8234ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vbi, vbi);
8235ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8236ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8237ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8238ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_gt(vf, vf);
8239ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp.p
8240ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp.p
8241ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8242ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_le */
8243ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vsc, vsc);
8244ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
8245ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
8246ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8247ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vsc, vbc);
8248ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
8249ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
8250ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8251ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vuc, vuc);
8252ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8253ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8254ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8255ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vuc, vbc);
8256ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8257ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8258ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8259ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vbc, vsc);
8260ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8261ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8262ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8263ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vbc, vuc);
8264ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8265ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8266ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8267ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vbc, vbc);
8268ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8269ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8270ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8271ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vs, vs);
8272ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
8273ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
8274ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8275ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vs, vbs);
8276ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
8277ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
8278ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8279ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vus, vus);
8280ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8281ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8282ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8283ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vus, vbs);
8284ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8285ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8286ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8287ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vbs, vs);
8288ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8289ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8290ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8291ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vbs, vus);
8292ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8293ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8294ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8295ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vbs, vbs);
8296ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8297ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8298ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8299ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vi, vi);
8300ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
8301ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
8302ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8303ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vi, vbi);
8304ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
8305ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
8306ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8307ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vui, vui);
8308ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8309ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8310ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8311ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vui, vbi);
8312ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8313ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8314ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8315ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vbi, vi);
8316ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8317ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8318ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8319ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vbi, vui);
8320ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8321ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8322ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8323ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vbi, vbi);
8324ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8325ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8326ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8327ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_le(vf, vf);
8328ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp.p
8329ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp.p
8330ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8331ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_lt */
8332ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vsc, vsc);
8333ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
8334ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
8335ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8336ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vsc, vbc);
8337ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p
8338ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p
8339ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8340ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vuc, vuc);
8341ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8342ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8343ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8344ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vuc, vbc);
8345ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8346ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8347ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8348ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vbc, vsc);
8349ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8350ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8351ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8352ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vbc, vuc);
8353ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8354ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8355ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8356ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vbc, vbc);
8357ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p
8358ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p
8359ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8360ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vs, vs);
8361ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
8362ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
8363ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8364ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vs, vbs);
8365ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p
8366ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p
8367ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8368ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vus, vus);
8369ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8370ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8371ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8372ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vus, vbs);
8373ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8374ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8375ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8376ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vbs, vs);
8377ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8378ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8379ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8380ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vbs, vus);
8381ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8382ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8383ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8384ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vbs, vbs);
8385ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p
8386ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p
8387ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8388ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vi, vi);
8389ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
8390ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
8391ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8392ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vi, vbi);
8393ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p
8394ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p
8395ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8396ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vui, vui);
8397ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8398ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8399ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8400ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vui, vbi);
8401ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8402ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8403ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8404ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vbi, vi);
8405ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8406ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8407ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8408ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vbi, vui);
8409ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8410ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8411ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8412ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vbi, vbi);
8413ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p
8414ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p
8415ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8416ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_lt(vf, vf);
8417ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp.p
8418ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp.p
8419ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8420ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_nan */
8421ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_nan(vf);
8422ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp.p
8423ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp.p
8424ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8425ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_ne */
8426ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vsc, vsc);
8427ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
8428ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
8429ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8430ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vsc, vbc);
8431ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
8432ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
8433ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8434ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vuc, vuc);
8435ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
8436ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
8437ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8438ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vuc, vbc);
8439ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
8440ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
8441ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8442ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vbc, vsc);
8443ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
8444ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
8445ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8446ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vbc, vuc);
8447ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
8448ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
8449ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8450ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vbc, vbc);
8451ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p
8452ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p
8453ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8454ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vs, vs);
8455ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8456ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8457ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8458ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vs, vbs);
8459ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8460ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8461ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8462ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vus, vus);
8463ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8464ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8465ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8466ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vus, vbs);
8467ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8468ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8469ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8470ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vbs, vs);
8471ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8472ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8473ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8474ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vbs, vus);
8475ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8476ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8477ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8478ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vbs, vbs);
8479ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8480ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8481ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8482ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vp, vp);
8483ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p
8484ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p
8485ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8486ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vi, vi);
8487ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8488ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8489ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8490ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vi, vbi);
8491ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8492ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8493ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8494ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vui, vui);
8495ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8496ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8497ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8498ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vui, vbi);
8499ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8500ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8501ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8502ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vbi, vi);
8503ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8504ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8505ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8506ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vbi, vui);
8507ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8508ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8509ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8510ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vbi, vbi);
8511ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p
8512ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p
8513ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8514ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ne(vf, vf);
8515ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp.p
8516ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp.p
8517ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8518ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_nge */
8519ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_nge(vf, vf);
8520ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp.p
8521ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp.p
8522ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8523ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_ngt */
8524ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_ngt(vf, vf);
8525ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp.p
8526ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp.p
8527ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8528ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_nle */
8529ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_nle(vf, vf);
8530ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp.p
8531ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp.p
8532ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8533ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_nlt */
8534ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_nlt(vf, vf);
8535ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp.p
8536ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp.p
8537ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8538ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_numeric */
8539ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_numeric(vf);
8540ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp.p
8541ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp.p
8542ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8543ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  /* vec_any_out */
8544ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = vec_any_out(vf, vf);
8545ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpbfp.p
8546ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpbfp.p
8547ef8225444452a1486bd721f3285301fe84643b00Stephen Hines}
8548ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8549ef8225444452a1486bd721f3285301fe84643b00Stephen Hines/* ------------------------------ Relational Operators ------------------------------ */
8550ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LABEL: define void @test7
8551ef8225444452a1486bd721f3285301fe84643b00Stephen Hinesvoid test7() {
8552ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector signed char vsc1 = (vector signed char)(-1);
8553ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector signed char vsc2 = (vector signed char)(-2);
8554ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vsc1 == vsc2);
8555ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p(i32 2
8556ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p(i32 2
8557ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8558ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vsc1 != vsc2);
8559ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p(i32 0
8560ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p(i32 0
8561ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8562ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vsc1 <  vsc2);
8563ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p(i32 2
8564ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p(i32 2
8565ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8566ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vsc1 >  vsc2);
8567ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p(i32 2
8568ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p(i32 2
8569ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8570ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vsc1 <= vsc2);
8571ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p(i32 0
8572ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p(i32 0
8573ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8574ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vsc1 >= vsc2);
8575ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsb.p(i32 0
8576ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsb.p(i32 0
8577ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8578ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector unsigned char vuc1 = (vector unsigned char)(1);
8579ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector unsigned char vuc2 = (vector unsigned char)(2);
8580ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vuc1 == vuc2);
8581ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p(i32 2
8582ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p(i32 2
8583ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8584ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vuc1 != vuc2);
8585ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequb.p(i32 0
8586ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequb.p(i32 0
8587ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8588ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vuc1 <  vuc2);
8589ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p(i32 2
8590ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p(i32 2
8591ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8592ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vuc1 >  vuc2);
8593ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p(i32 2
8594ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p(i32 2
8595ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8596ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vuc1 <= vuc2);
8597ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p(i32 0
8598ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p(i32 0
8599ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8600ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vuc1 >= vuc2);
8601ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtub.p(i32 0
8602ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtub.p(i32 0
8603ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8604ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector short vs1 = (vector short)(-1);
8605ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector short vs2 = (vector short)(-2);
8606ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vs1 == vs2);
8607ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p(i32 2
8608ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p(i32 2
8609ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8610ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vs1 != vs2);
8611ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p(i32 0
8612ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p(i32 0
8613ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8614ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vs1 <  vs2);
8615ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p(i32 2
8616ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p(i32 2
8617ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8618ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vs1 >  vs2);
8619ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p(i32 2
8620ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p(i32 2
8621ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8622ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vs1 <= vs2);
8623ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p(i32 0
8624ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p(i32 0
8625ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8626ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vs1 >= vs2);
8627ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsh.p(i32 0
8628ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsh.p(i32 0
8629ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8630ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector unsigned short vus1 = (vector unsigned short)(1);
8631ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector unsigned short vus2 = (vector unsigned short)(2);
8632ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vus1 == vus2);
8633ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p(i32 2
8634ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p(i32 2
8635ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8636ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vus1 != vus2);
8637ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequh.p(i32 0
8638ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequh.p(i32 0
8639ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8640ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vus1 <  vus2);
8641ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p(i32 2
8642ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p(i32 2
8643ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8644ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vus1 >  vus2);
8645ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p(i32 2
8646ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p(i32 2
8647ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8648ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vus1 <= vus2);
8649ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p(i32 0
8650ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p(i32 0
8651ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8652ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vus1 >= vus2);
8653ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuh.p(i32 0
8654ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuh.p(i32 0
8655ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8656ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector int vi1 = (vector int)(-1);
8657ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector int vi2 = (vector int)(-2);
8658ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vi1 == vi2);
8659ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p(i32 2
8660ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p(i32 2
8661ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8662ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vi1 != vi2);
8663ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p(i32 0
8664ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p(i32 0
8665ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8666ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vi1 <  vi2);
8667ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p(i32 2
8668ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p(i32 2
8669ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8670ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vi1 >  vi2);
8671ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p(i32 2
8672ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p(i32 2
8673ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8674ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vi1 <= vi2);
8675ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p(i32 0
8676ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p(i32 0
8677ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8678ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vi1 >= vi2);
8679ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtsw.p(i32 0
8680ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtsw.p(i32 0
8681ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8682ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector unsigned int vui1 = (vector unsigned int)(1);
8683ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector unsigned int vui2 = (vector unsigned int)(2);
8684ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vui1 == vui2);
8685ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p(i32 2
8686ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p(i32 2
8687ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8688ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vui1 != vui2);
8689ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpequw.p(i32 0
8690ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpequw.p(i32 0
8691ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8692ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vui1 <  vui2);
8693ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p(i32 2
8694ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p(i32 2
8695ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8696ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vui1 >  vui2);
8697ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p(i32 2
8698ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p(i32 2
8699ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8700ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vui1 <= vui2);
8701ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p(i32 0
8702ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p(i32 0
8703ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8704ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vui1 >= vui2);
8705ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtuw.p(i32 0
8706ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtuw.p(i32 0
8707ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8708ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector float vf1 = (vector float)(1.0);
8709ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  vector float vf2 = (vector float)(2.0);
8710ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vf1 == vf2);
8711ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp.p(i32 2
8712ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp.p(i32 2
8713ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8714ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vf1 != vf2);
8715ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpeqfp.p(i32 0
8716ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpeqfp.p(i32 0
8717ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8718ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vf1 <  vf2);
8719ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp.p(i32 2
8720ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp.p(i32 2
8721ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8722ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vf1 >  vf2);
8723ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgtfp.p(i32 2
8724ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgtfp.p(i32 2
8725ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8726ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vf1 <= vf2);
8727ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp.p(i32 2
8728ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp.p(i32 2
8729ef8225444452a1486bd721f3285301fe84643b00Stephen Hines
8730ef8225444452a1486bd721f3285301fe84643b00Stephen Hines  res_i = (vf1 >= vf2);
8731ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK: @llvm.ppc.altivec.vcmpgefp.p(i32 2
8732ef8225444452a1486bd721f3285301fe84643b00Stephen Hines// CHECK-LE: @llvm.ppc.altivec.vcmpgefp.p(i32 2
8733aa4fe05939ffbfd746b8f0065cc0b5e06ea94fe2Anton Yartsev}
8734