Re: [PATCH][AArch64] Don't split 64-bit constant stores to volatile location

2019-09-26 Thread Kyrill Tkachov
On 9/25/19 10:24 PM, James Greenhalgh wrote: On Tue, Sep 24, 2019 at 02:40:20PM +0100, Kyrill Tkachov wrote: Hi all, On 8/22/19 10:16 AM, Kyrill Tkachov wrote: Hi all, The optimisation to optimise:    typedef unsigned long long u64;    void bar(u64 *x)    { *x = 0xabcdef10abcdef10

Re: [PATCH][AArch64] Don't split 64-bit constant stores to volatile location

2019-09-25 Thread James Greenhalgh
On Tue, Sep 24, 2019 at 02:40:20PM +0100, Kyrill Tkachov wrote: > Hi all, > > On 8/22/19 10:16 AM, Kyrill Tkachov wrote: > > Hi all, > > > > The optimisation to optimise: > >    typedef unsigned long long u64; > > > >    void bar(u64 *x) > >    { > > *x = 0xabcdef10abcdef10; > >    } > > > >

Re: [PATCH][AArch64] Don't split 64-bit constant stores to volatile location

2019-09-24 Thread Kyrill Tkachov
Hi all, On 8/22/19 10:16 AM, Kyrill Tkachov wrote: Hi all, The optimisation to optimise:    typedef unsigned long long u64;    void bar(u64 *x)    { *x = 0xabcdef10abcdef10;    } from:     mov x1, 61200     movk    x1, 0xabcd, lsl 16     movk    x1, 0xef10, lsl 32    

Re: [PATCH][AArch64] Don't split 64-bit constant stores to volatile location

2019-08-22 Thread Andrew Pinski
On Thu, Aug 22, 2019 at 2:16 AM Kyrill Tkachov wrote: > > Hi all, > > The optimisation to optimise: > typedef unsigned long long u64; > > void bar(u64 *x) > { > *x = 0xabcdef10abcdef10; > } > > from: > mov x1, 61200 > movkx1, 0xabcd, lsl 16 >