Displaying 9 results from an estimated 9 matches for "vecinit2".
Did you mean:
vecinit
2017 Sep 13
2
RFC phantom memory intrinsic
...r inbounds double, double* %ptr, i64 %i
%0 = load double, double* %arrayidx, align 8
%vecinit = insertelement <4 x double> undef, double %0, i32 0
%add = add i64 %i, 1
%arrayidx1 = getelementptr inbounds double, double* %ptr, i64 %add
%1 = load double, double* %arrayidx1, align 8
%vecinit2 = insertelement <4 x double> %vecinit, double %1, i32 1
%add3 = add i64 %i, 2
%arrayidx4 = getelementptr inbounds double, double* %ptr, i64 %add3
%2 = load double, double* %arrayidx4, align 8
%vecinit5 = insertelement <4 x double> %vecinit2, double %2, i32 2
%add6 = add i64 %i...
2017 Sep 13
2
RFC phantom memory intrinsic
...d double, double* %arrayidx, align 8
>> %vecinit = insertelement <4 x double> undef, double %0, i32 0
>> %add = add i64 %i, 1
>> %arrayidx1 = getelementptr inbounds double, double* %ptr, i64 %add
>> %1 = load double, double* %arrayidx1, align 8
>> %vecinit2 = insertelement <4 x double> %vecinit, double %1, i32 1
>> %add3 = add i64 %i, 2
>> %arrayidx4 = getelementptr inbounds double, double* %ptr, i64 %add3
>> %2 = load double, double* %arrayidx4, align 8
>> %vecinit5 = insertelement <4 x double> %vecinit...
2017 Sep 26
0
RFC phantom memory intrinsic
...dx, align 8
>>> %vecinit = insertelement <4 x double> undef, double %0, i32 0
>>> %add = add i64 %i, 1
>>> %arrayidx1 = getelementptr inbounds double, double* %ptr, i64 %add
>>> %1 = load double, double* %arrayidx1, align 8
>>> %vecinit2 = insertelement <4 x double> %vecinit, double %1, i32 1
>>> %add3 = add i64 %i, 2
>>> %arrayidx4 = getelementptr inbounds double, double* %ptr, i64 %add3
>>> %2 = load double, double* %arrayidx4, align 8
>>> %vecinit5 = insertelement <4 x...
2020 Jan 11
2
[RFC][SDAG] Convert build_vector of ops on extractelts into ops on input vectors
...is an example that shows the difference
(simplified to <2 x double> for brevity):
define dso_local <2 x double> @test(i64 %a, i64 %b) {
entry:
%conv = uitofp i64 %a to double
%conv1 = uitofp i64 %b to double
%vecinit = insertelement <2 x double> undef, double %conv, i32 0
%vecinit2 = insertelement <2 x double> %vecinit, double %conv1, i32 1
ret <2 x double> %vecinit2
}
The inputs here are scalars so I suppose it is quite possible (perhaps
likely) that on some targets, doing the insert with integers and then
converting the vector is cheaper (although this is def...
2017 Sep 26
2
RFC phantom memory intrinsic
...>> %vecinit = insertelement <4 x double> undef, double %0, i32 0
>>>> %add = add i64 %i, 1
>>>> %arrayidx1 = getelementptr inbounds double, double* %ptr, i64 %add
>>>> %1 = load double, double* %arrayidx1, align 8
>>>> %vecinit2 = insertelement <4 x double> %vecinit, double %1, i32 1
>>>> %add3 = add i64 %i, 2
>>>> %arrayidx4 = getelementptr inbounds double, double* %ptr, i64 %add3
>>>> %2 = load double, double* %arrayidx4, align 8
>>>> %vecinit5 = inser...
2017 Sep 26
0
RFC phantom memory intrinsic
...t = insertelement <4 x double> undef, double %0, i32 0
>>>>> %add = add i64 %i, 1
>>>>> %arrayidx1 = getelementptr inbounds double, double* %ptr, i64 %add
>>>>> %1 = load double, double* %arrayidx1, align 8
>>>>> %vecinit2 = insertelement <4 x double> %vecinit, double %1, i32 1
>>>>> %add3 = add i64 %i, 2
>>>>> %arrayidx4 = getelementptr inbounds double, double* %ptr, i64 %add3
>>>>> %2 = load double, double* %arrayidx4, align 8
>>>>>...
2020 Jan 11
2
[RFC][SDAG] Convert build_vector of ops on extractelts into ops on input vectors
...<2 x double> for brevity):
>> define dso_local <2 x double> @test(i64 %a, i64 %b) {
>> entry:
>> %conv = uitofp i64 %a to double
>> %conv1 = uitofp i64 %b to double
>> %vecinit = insertelement <2 x double> undef, double %conv, i32 0
>> %vecinit2 = insertelement <2 x double> %vecinit, double %conv1, i32 1
>> ret <2 x double> %vecinit2
>> }
>>
>> The inputs here are scalars so I suppose it is quite possible (perhaps
>> likely) that on some targets, doing the insert with integers and then
>> c...
2017 Sep 12
3
RFC phantom memory intrinsic
Hi,
For PR21780 solution, I plan to add a new functionality to restore
memory operations that was once deleted, in this particular case it is
the load operations that were deleted by InstCombine, please note that
once the load was removed there is no way to restore it back and that
prevents us from vectorizing the shuffle operation. There are probably
more similar issues where this approach could
2020 Jan 10
2
[RFC][SDAG] Convert build_vector of ops on extractelts into ops on input vectors
I have added a few PPC-specific DAG combines in the past that follow this
pattern on specific operations. Now that it appears that this would be
useful to do on yet another operation, I'm wondering what people think
about doing this in the target-independent DAG Combiner for any
legal/custom operation on the target.
TL; DR;
The generic pattern would look like this:
(build_vector (op