Displaying 3 results from an estimated 3 matches for "splatlds31_d".
Did you mean:
splatlds24_d
2015 Jul 24
0
[LLVMdev] SIMD for sdiv <2 x i64>
...CallS27_D.splat to <2 x double*>
%extractS29_D = extractelement <2 x double*> %bitcastS28_D, i32 1
store double* %extractS29_D, double** %val.i.i, align 8
%val.i3.i.i = getelementptr inbounds %class.Vector* %__x, i64 0, i32 3
%4 = load double** %val.i3.i.i, align 8, !tbaa !22
%splatLDS31_D.splatinsert = insertelement <2 x double*> undef, double*
%4, i32 0
%splatLDS31_D.splat = shufflevector <2 x double*>
%splatLDS31_D.splatinsert, <2 x double*> undef, <2 x i32> zeroinitializer
%bitcastS32_D = bitcast <2 x double*> %splatLDS31_D.splat to <2 x i8*&g...
2015 Jul 24
1
[LLVMdev] SIMD for sdiv <2 x i64>
...x double*>
> %extractS29_D = extractelement <2 x double*> %bitcastS28_D, i32 1
> store double* %extractS29_D, double** %val.i.i, align 8
> %val.i3.i.i = getelementptr inbounds %class.Vector* %__x, i64 0, i32 3
> %4 = load double** %val.i3.i.i, align 8, !tbaa !22
> %splatLDS31_D.splatinsert = insertelement <2 x double*> undef,
> double* %4, i32 0
> %splatLDS31_D.splat = shufflevector <2 x double*>
> %splatLDS31_D.splatinsert, <2 x double*> undef, <2 x i32> zeroinitializer
> %bitcastS32_D = bitcast <2 x double*> %splatLDS31_D....
2015 Jul 24
2
[LLVMdev] SIMD for sdiv <2 x i64>
On 07/24/2015 03:42 AM, Benjamin Kramer wrote:
>> On 24.07.2015, at 08:06, zhi chen <zchenhn at gmail.com> wrote:
>>
>> It seems that that it's hard to vectorize int64 in LLVM. For example, LLVM 3.4 generates very complicated code for the following IR. I am running on a Haswell processor. Is it because there is no alternative AVX/2 instructions for int64? The same thing