Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-06 Thread Tejas Belagod
Julian Brown wrote: On Tue, 5 Mar 2013 10:42:59 +0100 Richard Biener wrote: On Tue, Mar 5, 2013 at 12:47 AM, Paul Brook wrote: I somehow missed the "Appendix A: Support for Advanced SIMD Extensions" in the AAPCS document (it's not in the TOC!). It looks like the builtin vector types are inde

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-05 Thread Julian Brown
On Tue, 5 Mar 2013 10:42:59 +0100 Richard Biener wrote: > On Tue, Mar 5, 2013 at 12:47 AM, Paul Brook > wrote: > >> I somehow missed the "Appendix A: Support for Advanced SIMD > >> Extensions" in the AAPCS document (it's not in the TOC!). It looks > >> like the builtin vector types are indeed de

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-05 Thread Richard Biener
On Tue, Mar 5, 2013 at 12:47 AM, Paul Brook wrote: >> I somehow missed the "Appendix A: Support for Advanced SIMD Extensions" >> in the AAPCS document (it's not in the TOC!). It looks like the >> builtin vector types are indeed defined to be stored in memory in >> vldm/vstm order -- I think that m

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-04 Thread Paul Brook
> I somehow missed the "Appendix A: Support for Advanced SIMD Extensions" > in the AAPCS document (it's not in the TOC!). It looks like the > builtin vector types are indeed defined to be stored in memory in > vldm/vstm order -- I think that means we're back to square one. There's still the possib

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-04 Thread Julian Brown
On Mon, 4 Mar 2013 15:29:22 + Julian Brown wrote: > > Remember that it's not just function arguments, it's any interface > > shared between functions. i.e. including structures and global > > variables. > > Ugh, I hadn't considered structures or global variables :-/. If we > decide they hav

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-04 Thread Julian Brown
On Mon, 4 Mar 2013 13:08:57 + Paul Brook wrote: > > > > I can't exactly remember why we didn't do that to start with. I > > > > think the problem was ABI-related, or to do with transferring > > > > NEON vectors to/from ARM registers when it was necessary to do > > > > that... I'm planning to

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-04 Thread Paul Brook
> > > I can't exactly remember why we didn't do that to start with. I > > > think the problem was ABI-related, or to do with transferring NEON > > > vectors to/from ARM registers when it was necessary to do that... > > > I'm planning to do some archaeology to try to see if I can figure > > > out a

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-04 Thread Julian Brown
On Fri, 1 Mar 2013 14:35:05 + Paul Brook wrote: > > It's not even necessary to use explicit shuffles -- NEON has > > perfectly good instructions for loading/storing vectors in the > > "right" order, in the form of vld1 & vst1. I'm afraid the solution > > to this problem might have been starin

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-01 Thread Paul Brook
> > Do I understand correctly that the "only" issue is memory vs. register > > element ordering? Thus a fixup could be as simple as extra shuffles > > inserted after vector memory loads and before vector memory stores? > > (with the hope of RTL optimizers optimizing those)? > > It's not even nece

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-01 Thread Julian Brown
On Fri, 1 Mar 2013 11:07:17 +0100 Richard Biener wrote: > On Wed, Feb 27, 2013 at 6:29 PM, Julian Brown > wrote: > > Hi, > > > > Several new (ish?) autovectorizer features have apparently caused > > NEON support for same to regress quite heavily in big-endian mode. > > This patch is an attempt t

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-03-01 Thread Richard Biener
On Wed, Feb 27, 2013 at 6:29 PM, Julian Brown wrote: > Hi, > > Several new (ish?) autovectorizer features have apparently caused NEON > support for same to regress quite heavily in big-endian mode. This > patch is an attempt to fix things up, but is not without problems -- > maybe someone will hav

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-02-28 Thread Janis Johnson
On 02/28/2013 02:06 AM, Julian Brown wrote: > On Wed, 27 Feb 2013 11:04:04 -0800 > Janis Johnson wrote: > >> On 02/27/2013 09:29 AM, Julian Brown wrote: >>> Index: gcc/testsuite/gcc.dg/vect/slp-cond-3.c >>> === >>> --- gcc/testsuite/

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-02-28 Thread Julian Brown
On Wed, 27 Feb 2013 11:04:04 -0800 Janis Johnson wrote: > On 02/27/2013 09:29 AM, Julian Brown wrote: > > Index: gcc/testsuite/gcc.dg/vect/slp-cond-3.c > > === > > --- gcc/testsuite/gcc.dg/vect/slp-cond-3.c (revision 196170) > > +++

Re: [PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-02-27 Thread Janis Johnson
On 02/27/2013 09:29 AM, Julian Brown wrote: > Index: gcc/testsuite/gcc.dg/vect/slp-cond-3.c > === > --- gcc/testsuite/gcc.dg/vect/slp-cond-3.c(revision 196170) > +++ gcc/testsuite/gcc.dg/vect/slp-cond-3.c(working copy) > @@ -79

[PATCH, ARM, RFC] Fix vect.exp failures for NEON in big-endian mode

2013-02-27 Thread Julian Brown
Hi, Several new (ish?) autovectorizer features have apparently caused NEON support for same to regress quite heavily in big-endian mode. This patch is an attempt to fix things up, but is not without problems -- maybe someone will have a suggestion as to how we should proceed. The problem (as ever