Displaying 11 results from an estimated 11 matches for "bigendianneon".
2016 Jan 13
2
[GlobalISel] A Proposal for global instruction selection
...ed to contradict itself.
>
> > %0 = load <4 x i32> %x
> > %1 = bitcast <4 x i32> %0 to <2 x i64>
> > store <2 x i64> %1, <2 x i64>* %y
>
> Yes. The memory pattern differs. This is the first diagram on the right at: http://llvm.org/docs/BigEndianNEON.html#bitconverts)
>
> > If so, does this mean that performing dead-store-elimination is illegal for ARM?
>
> Yes, for vector types whose corresponding load differs from the store type.
>
> %0 = load <4 x i32> %x
> store <4 x i32> %0, <4 x i32>* %x
>...
2016 Jan 13
2
[GlobalISel] A Proposal for global instruction selection
...m.org>
Sent: Wednesday, January 13, 2016 2:35:32 AM
Subject: Re: [llvm-dev] [GlobalISel] A Proposal for global instruction selection
Hi Philip,
store <2 x i64> %1, <2 x i64>* %y
Yes. The memory pattern differs. This is the first diagram on the right at: http://llvm.org/docs/BigEndianNEON.html#bitconverts )
I think that teaching the optimizer about big-Endian lane ordering would have been better. Inserting the REV after every LDR sounds very similar to what we do for VSX on little-Endian PowerPC systems (PowerPC may have a slight advantage here in that we don't need to do ins...
2016 Jan 13
2
[GlobalISel] A Proposal for global instruction selection
...bject: Re: [llvm-dev] [GlobalISel] A Proposal for global
> instruction selection
>
> Hi Philip,
>
>
>
>
>
> store <2 x i64> %1, <2 x i64>* %y
>
> Yes. The memory pattern differs. This is the first diagram on the
> right at: http://llvm.org/docs/BigEndianNEON.html#bitconverts )
>
>
> I think that teaching the optimizer about big-Endian lane ordering
> would have been better. Inserting the REV after every LDR sounds
> very similar to what we do for VSX on little-Endian PowerPC systems
> (PowerPC may have a slight advantage here in tha...
2016 Jan 13
2
[GlobalISel] A Proposal for global instruction selection
...; On 01/12/2016 05:55 AM, James Molloy via llvm-dev wrote:
>> Hi,
>>
>> > I found this thinking quite difficult to explain. Does it make sense?
>>
>> It might help to link to the documentation on why bitcasts are weird on big-endian NEON: <http://llvm.org/docs/BigEndianNEON.html#bitconverts>http://llvm.org/docs/BigEndianNEON.html#bitconverts <http://llvm.org/docs/BigEndianNEON.html#bitconverts>
>>
>> Cheers,
>>
>> James
>>
>> On Tue, 12 Jan 2016 at 13:23 Daniel Sanders via llvm-dev <llvm-dev at lists.llvm.org <mail...
2016 Jan 13
2
[GlobalISel] A Proposal for global instruction selection
...;>
> >> Hi Philip,
> >>
> >>
> >>
> >>
> >>
> >> store <2 x i64> %1, <2 x i64>* %y
> >>
> >> Yes. The memory pattern differs. This is the first diagram on the
> >> right at: http://llvm.org/docs/BigEndianNEON.html#bitconverts )
> >>
> >>
> >> I think that teaching the optimizer about big-Endian lane ordering
> >> would have been better. Inserting the REV after every LDR sounds
> >> very similar to what we do for VSX on little-Endian PowerPC systems
> >&...
2016 Jan 14
2
[GlobalISel] A Proposal for global instruction selection
...osal for global
>> instruction selection
>>
>> Hi Philip,
>>
>>
>>
>>
>>
>> store <2 x i64> %1, <2 x i64>* %y
>>
>> Yes. The memory pattern differs. This is the first diagram on the
>> right at: http://llvm.org/docs/BigEndianNEON.html#bitconverts )
>>
>>
>> I think that teaching the optimizer about big-Endian lane ordering
>> would have been better. Inserting the REV after every LDR sounds
>> very similar to what we do for VSX on little-Endian PowerPC systems
>> (PowerPC may have a slight...
2016 Jan 12
4
[GlobalISel] A Proposal for global instruction selection
Hi,
> I found this thinking quite difficult to explain. Does it make sense?
It might help to link to the documentation on why bitcasts are weird on
big-endian NEON: http://llvm.org/docs/BigEndianNEON.html#bitconverts
Cheers,
James
On Tue, 12 Jan 2016 at 13:23 Daniel Sanders via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Hi,
>
>
>
> I haven't found much time to look into the LLVM-IR-level optimizations yet
> so I'm not sure how they handle bitcasts. With...
2016 Jan 12
2
[GlobalISel] A Proposal for global instruction selection
...Subject: Re: [llvm-dev] [GlobalISel] A Proposal for global instruction selection
>
> Hi,
>
> > I found this thinking quite difficult to explain. Does it make sense?
> It might help to link to the documentation on why bitcasts are weird on big-endian NEON: http://llvm.org/docs/BigEndianNEON.html#bitconverts <http://llvm.org/docs/BigEndianNEON.html#bitconverts>
>
> Cheers,
>
> James
>
> On Tue, 12 Jan 2016 at 13:23 Daniel Sanders via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
> Hi,
>
> I haven...
2016 Jan 14
2
[GlobalISel] A Proposal for global instruction selection
...>>
> >>
> >>
> >> store <2 x i64> %1, <2 x i64>* %y
> >>
> >> Yes. The memory pattern differs. This is the first diagram
> on the
> >> right at: http://llvm.org/docs/BigEndianNEON.html#bitconverts )
> >>
> >>
> >> I think that teaching the optimizer about big-Endian lane
> ordering
> >> would have been better. Inserting the REV after every LDR
> sounds
> >> very similar...
2016 Jan 15
3
[GlobalISel] A Proposal for global instruction selection
...>
> > >>
> > >>
> > >>
> > >>
> > >> store <2 x i64> %1, <2 x i64>* %y
> > >>
> > >> Yes. The memory pattern differs. This is the first diagram on the
> > >> right at: http://llvm.org/docs/BigEndianNEON.html#bitconverts )
> > >>
> > >>
> > >> I think that teaching the optimizer about big-Endian lane ordering
> > >> would have been better. Inserting the REV after every LDR sounds
> > >> very similar to what we do for VSX on little-Endian P...
2016 Jan 11
2
[GlobalISel] A Proposal for global instruction selection
Hi Daniel,
Thanks for the pointers, I wasn’t aware of the second thread you’ve mentioned.
I may be wrong but I think LLVM-IR optimizations really treat bistcasts as no-op casts, in the sense of no instructions are required.
Is there anyone that could chime in on that?
However, it seems SelectionDAG sticks to the load/store semantic:
"BITCAST - This operator converts between integer,