Lines Matching refs:ANY

2 ; RUN: opt < %s -passes=instcombine -S -data-layout="e-n64" | FileCheck %s --check-prefixes=ANY,LE
3 ; RUN: opt < %s -passes=instcombine -S -data-layout="E-n64" | FileCheck %s --check-prefixes=ANY,BE
6 ; ANY-LABEL: @extractelement_out_of_range(
7 ; ANY-NEXT: ret i32 poison
14 ; ANY-LABEL: @extractelement_type_out_of_range(
15 ; ANY-NEXT: [[E1:%.*]] = extractelement <2 x i32> [[X:%.*]], i64 0
16 ; ANY-NEXT: ret i32 [[E1]]
23 ; ANY-LABEL: @bitcasted_inselt_equal_num_elts(
24 ; ANY-NEXT: [[R:%.*]] = bitcast float [[F:%.*]] to i32
25 ; ANY-NEXT: ret i32 [[R]]
34 ; ANY-LABEL: @test2(
35 ; ANY-NEXT: ret i64 [[IN:%.*]]
129 ; ANY-LABEL: @bitcasted_inselt_wide_source_wrong_insert(
130 ; ANY-NEXT: [[B:%.*]] = bitcast <2 x i32> [[V:%.*]] to <8 x i8>
131 ; ANY-NEXT: [[R:%.*]] = extractelement <8 x i8> [[B]], i64 2
132 ; ANY-NEXT: ret i8 [[R]]
188 ; ANY-LABEL: @bitcasted_inselt_to_FP_uses(
189 ; ANY-NEXT: [[I:%.*]] = insertelement <2 x i128> undef, i128 [[X:%.*]], i64 0
190 ; ANY-NEXT: call void @use_v2i128(<2 x i128> [[I]])
191 ; ANY-NEXT: [[B:%.*]] = bitcast <2 x i128> [[I]] to <8 x float>
192 ; ANY-NEXT: [[R:%.*]] = extractelement <8 x float> [[B]], i64 1
193 ; ANY-NEXT: ret float [[R]]
203 ; ANY-LABEL: @bitcasted_inselt_to_FP_uses2(
204 ; ANY-NEXT: [[I:%.*]] = insertelement <2 x i128> undef, i128 [[X:%.*]], i64 0
205 ; ANY-NEXT: [[B:%.*]] = bitcast <2 x i128> [[I]] to <8 x float>
206 ; ANY-NEXT: call void @use_v8f32(<8 x float> [[B]])
207 ; ANY-NEXT: [[R:%.*]] = extractelement <8 x float> [[B]], i64 1
208 ; ANY-NEXT: ret float [[R]]
239 ; ANY-LABEL: @bitcasted_inselt_from_FP_uses(
240 ; ANY-NEXT: [[I:%.*]] = insertelement <2 x double> undef, double [[X:%.*]], i64 0
241 ; ANY-NEXT: call void @use_v2f64(<2 x double> [[I]])
242 ; ANY-NEXT: [[B:%.*]] = bitcast <2 x double> [[I]] to <8 x i16>
243 ; ANY-NEXT: [[R:%.*]] = extractelement <8 x i16> [[B]], i64 1
244 ; ANY-NEXT: ret i16 [[R]]
254 ; ANY-LABEL: @bitcasted_inselt_from_FP_uses2(
255 ; ANY-NEXT: [[I:%.*]] = insertelement <2 x double> undef, double [[X:%.*]], i64 0
256 ; ANY-NEXT: [[B:%.*]] = bitcast <2 x double> [[I]] to <8 x i16>
257 ; ANY-NEXT: call void @use_v8i16(<8 x i16> [[B]])
258 ; ANY-NEXT: [[R:%.*]] = extractelement <8 x i16> [[B]], i64 1
259 ; ANY-NEXT: ret i16 [[R]]
269 ; ANY-LABEL: @bitcasted_inselt_to_and_from_FP(
270 ; ANY-NEXT: [[I:%.*]] = insertelement <2 x double> undef, double [[X:%.*]], i64 0
271 ; ANY-NEXT: [[B:%.*]] = bitcast <2 x double> [[I]] to <4 x float>
272 ; ANY-NEXT: [[R:%.*]] = extractelement <4 x float> [[B]], i64 1
273 ; ANY-NEXT: ret float [[R]]
282 ; ANY-LABEL: @bitcasted_inselt_to_and_from_FP_uses(
283 ; ANY-NEXT: [[I:%.*]] = insertelement <2 x double> undef, double [[X:%.*]], i64 0
284 ; ANY-NEXT: call void @use_v2f64(<2 x double> [[I]])
285 ; ANY-NEXT: [[B:%.*]] = bitcast <2 x double> [[I]] to <4 x float>
286 ; ANY-NEXT: [[R:%.*]] = extractelement <4 x float> [[B]], i64 1
287 ; ANY-NEXT: ret float [[R]]
299 ; ANY-LABEL: @bitcasted_inselt_to_and_from_FP_uses2(
300 ; ANY-NEXT: [[I:%.*]] = insertelement <2 x double> undef, double [[X:%.*]], i64 0
301 ; ANY-NEXT: [[B:%.*]] = bitcast <2 x double> [[I]] to <4 x float>
302 ; ANY-NEXT: call void @use_v4f32(<4 x float> [[B]])
303 ; ANY-NEXT: [[R:%.*]] = extractelement <4 x float> [[B]], i64 1
304 ; ANY-NEXT: ret float [[R]]
317 ; ANY-LABEL: @invalid_extractelement(
318 ; ANY-NEXT: [[TMP1:%.*]] = shufflevector <2 x double> [[A:%.*]], <2 x double> poison, <4 x i32> …
319 ; ANY-NEXT: [[T4:%.*]] = shufflevector <4 x double> [[B:%.*]], <4 x double> [[TMP1]], <4 x i32> …
320 ; ANY-NEXT: [[E:%.*]] = extractelement <4 x double> [[B]], i64 1
321 ; ANY-NEXT: store double [[E]], double* [[P:%.*]], align 8
322 ; ANY-NEXT: ret <4 x double> [[T4]]
387 ; ANY-LABEL: @bitcast_scalar_illegal_type_index1(
388 ; ANY-NEXT: [[V:%.*]] = bitcast i128 [[X:%.*]] to <16 x i8>
389 ; ANY-NEXT: [[R:%.*]] = extractelement <16 x i8> [[V]], i64 1
390 ; ANY-NEXT: ret i8 [[R]]
400 ; ANY-LABEL: @bitcast_fp_index0(
401 ; ANY-NEXT: [[V:%.*]] = bitcast float [[X:%.*]] to <4 x i8>
402 ; ANY-NEXT: [[R:%.*]] = extractelement <4 x i8> [[V]], i64 0
403 ; ANY-NEXT: ret i8 [[R]]
413 ; ANY-LABEL: @bitcast_fpvec_index0(
414 ; ANY-NEXT: [[V:%.*]] = bitcast i32 [[X:%.*]] to <2 x half>
415 ; ANY-NEXT: [[R:%.*]] = extractelement <2 x half> [[V]], i64 0
416 ; ANY-NEXT: ret half [[R]]
426 ; ANY-LABEL: @bitcast_scalar_index_variable(
427 ; ANY-NEXT: [[V:%.*]] = bitcast i32 [[X:%.*]] to <4 x i8>
428 ; ANY-NEXT: [[R:%.*]] = extractelement <4 x i8> [[V]], i64 [[Y:%.*]]
429 ; ANY-NEXT: ret i8 [[R]]