Re: [PATCH][ARM] Fix low reg issue in Thumb-2 movsi patterns

2019-07-25 Thread Wilco Dijkstra
Hi Richard, > I think this should be "lk*r", not "l*rk".  SP is only going to crop up > in rare circumstances, but we are always going to need this pattern if > it does and hiding this from register preferencing is pointless.  It's > not like the compiler is going to start allocating SP in the

Re: [PATCH][ARM] Fix low reg issue in Thumb-2 movsi patterns

2019-07-24 Thread Richard Earnshaw (lists)
On 24/07/2019 16:16, Wilco Dijkstra wrote: The Thumb-2 movsi patterns try to prefer low registers for loads and stores. However this is done incorrectly by using 2 separate variants with 'l' and 'h' register classes. The register allocator will only use low registers, and as a result we end u

Re: [PATCH][ARM] Fix low reg issue in Thumb-2 movsi patterns

2019-07-24 Thread Kyrill Tkachov
Hi Wilco, On 7/24/19 4:16 PM, Wilco Dijkstra wrote: The Thumb-2 movsi patterns try to prefer low registers for loads and stores. However this is done incorrectly by using 2 separate variants with 'l' and 'h' register classes.  The register allocator will only use low registers, and as a result

[PATCH][ARM] Fix low reg issue in Thumb-2 movsi patterns

2019-07-24 Thread Wilco Dijkstra
The Thumb-2 movsi patterns try to prefer low registers for loads and stores. However this is done incorrectly by using 2 separate variants with 'l' and 'h' register classes. The register allocator will only use low registers, and as a result we end up with significantly more spills and moves to hi