• Home
  • Raw
  • Download

Lines Matching +full:cast +full:- +full:align

1 ; RUN: opt -S -instcombine -o - %s | FileCheck %s
2 target datalayout = "e-p:32:32:32-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v16:16:16-v24:32:32-v32:3…
8 ; Test cast between scalars with same bit sizes
11 ; Test cast between vectors with same number of elements and bit sizes
14 ; Test cast from vector to scalar with same number of bits
17 ; Test cast from scalar to vector with same number of bits
20 ; Test cast between vectors of pointers
26 ; Test cast between scalars with different bit sizes
29 ; Test cast between vectors with different bit sizes but the
33 ; Test cast between vectors with same number of bits and different
37 ; Test cast between scalar and vector with different number of bits
40 ; Test cast between vector and scalar with different number of bits
43 ; Test cast from scalar to vector of pointers with same number of bits
47 ; Test cast between vector of pointers and scalar with different number of bits
92 ; CHECK-LABEL: @bitcast_alias_scalar
95 ; CHECK-NOT: fptoui
96 ; CHECK-NOT: uitofp
99 %tmp = load float, float* %source, align 8
101 store float %call, float* %dest, align 8
108 ; CHECK-LABEL: @bitcast_alias_vector
111 ; CHECK-NOT: fptoui
112 ; CHECK-NOT: uitofp
115 %tmp = load <2 x float>, <2 x float>* %source, align 8
117 store <2 x float> %call, <2 x float>* %dest, align 8
124 ; CHECK-LABEL: @bitcast_alias_vector_scalar_same_size
130 %tmp = load <2 x float>, <2 x float>* %source, align 8
132 store <2 x float> %call, <2 x float>* %dest, align 8
138 ; CHECK-LABEL: @bitcast_alias_scalar_vector_same_size
144 %tmp = load i64, i64* %source, align 8
146 store i64 %call, i64* %dest, align 8
152 ; CHECK-LABEL: @bitcast_alias_vector_ptrs_same_size
158 %tmp = load <2 x i64*>, <2 x i64*>* %source, align 8
160 store <2 x i64*> %call, <2 x i64*>* %dest, align 8
168 ; CHECK-LABEL: @bitcast_alias_mismatch_scalar_size
169 ; CHECK-NOT: fptoui
171 ; CHECK-NOT: uitofp
172 %tmp = load float, float* %source, align 8
174 store float %call, float* %dest, align 8
180 ; CHECK-LABEL: @bitcast_alias_mismatch_vector_element_and_bit_size
181 ; CHECK-NOT: fptoui <2 x float> %tmp to <2 x i64>
183 ; CHECK-NOT: uitofp <2 x i64> %call to <2 x float>
184 %tmp = load <2 x float>, <2 x float>* %source, align 8
186 store <2 x float> %call, <2 x float>* %dest, align 8
192 ; CHECK-LABEL: @bitcast_alias_vector_mismatched_number_elements
194 %tmp = load <4 x float>, <4 x float>* %source, align 8
196 store <4 x float> %call, <4 x float>* %dest, align 8
202 ; CHECK-LABEL: @bitcast_alias_vector_scalar_mismatched_bit_size
204 %tmp = load <4 x float>, <4 x float>* %source, align 8
206 store <4 x float> %call, <4 x float>* %dest, align 8
212 ; CHECK-LABEL: @bitcast_alias_vector_ptrs_scalar_mismatched_bit_size
214 %tmp = load <4 x i32*>, <4 x i32*>* %source, align 8
216 store <4 x i32*> %call, <4 x i32*>* %dest, align 8
222 ; CHECK-LABEL: @bitcast_alias_scalar_vector_ptrs_same_size
224 %tmp = load i64, i64* %source, align 8
226 store i64 %call, i64* %dest, align 8
232 ; CHECK-LABEL: @bitcast_alias_scalar_vector_mismatched_bit_size
234 %tmp = load i64, i64* %source, align 8
236 store i64 %call, i64* %dest, align 8