Displaying 3 results from an estimated 3 matches for "vecext1".
Did you mean:
vecext4
2020 Jan 11
2
[RFC][SDAG] Convert build_vector of ops on extractelts into ops on input vectors
...tegers and then
converting the vector is cheaper (although this is definitely not the case
with PPC).
But what I am proposing here is actually handling something like this:
define dso_local <2 x double> @test(<2 x i64> %a) {
entry:
%vecext = extractelement <2 x i64> %a, i32 0
%vecext1 = extractelement <2 x i64> %a, i32 1
%conv = sitofp i64 %vecext to double
%conv2 = sitofp i64 %vecext1 to double
%vecinit = insertelement <2 x double> undef, double %conv, i32 0
%vecinit3 = insertelement <2 x double> %vecinit, double %conv2, i32 1
ret <2 x double>...
2020 Jan 11
2
[RFC][SDAG] Convert build_vector of ops on extractelts into ops on input vectors
...ough this is definitely not the case
>> with PPC).
>> But what I am proposing here is actually handling something like this:
>> define dso_local <2 x double> @test(<2 x i64> %a) {
>> entry:
>> %vecext = extractelement <2 x i64> %a, i32 0
>> %vecext1 = extractelement <2 x i64> %a, i32 1
>> %conv = sitofp i64 %vecext to double
>> %conv2 = sitofp i64 %vecext1 to double
>> %vecinit = insertelement <2 x double> undef, double %conv, i32 0
>> %vecinit3 = insertelement <2 x double> %vecinit, double %co...
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