Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-12-07 Thread Steve Ellcey
On Thu, 2017-12-07 at 09:56 +, James Greenhalgh wrote: >  > One obvious thing I missed in the review is that this change will break > bootstrap on systems with older assemblers. Practically, that's those of > us who are holding out on Ubuntu 14.04. -march=armv8-a+lse would go back > a little

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-12-07 Thread James Greenhalgh
On Fri, Sep 29, 2017 at 09:29:37PM +0100, Steve Ellcey wrote: > On Thu, 2017-09-28 at 12:31 +0100, Szabolcs Nagy wrote: > >  > > i think this should be improved, see below. > > diff --git a/libatomic/Makefile.am b/libatomic/Makefile.am > index d731406..92d19c6 100644 > --- a/libatomic/Makefile.am

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-12-04 Thread Steve Ellcey
FYI: Since James approved the Aarch64 part and since I think the generic part can be considered trivial, I have gone ahead and checked this patch in. Steve Ellcey sell...@cavium.com On Tue, 2017-11-28 at 16:12 -0800, Steve Ellcey wrote: > On Tue, 2017-11-21 at 17:35 +, James Greenhalgh

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-11-28 Thread Steve Ellcey
On Tue, 2017-11-21 at 17:35 +, James Greenhalgh wrote: > > Thanks for the detailed explanation. I understood this, and my opinion is > that the AArch64 parts of this patch are OK (and I don't know who needs to > Ack the small generic changes you require). > > Let's give Richard/Marcus 48

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-11-21 Thread James Greenhalgh
On Mon, Nov 20, 2017 at 07:22:15PM +, Steve Ellcey wrote: > On Mon, 2017-11-20 at 18:27 +, James Greenhalgh wrote: > > > > If you have the time, would you mind giving me a quick run-down of what > > design decisions went in to this patch, and why they are the right thing > > to do? Sorry

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-11-20 Thread Steve Ellcey
On Mon, 2017-11-20 at 18:27 +, James Greenhalgh wrote: > > If you have the time, would you mind giving me a quick run-down of what > design decisions went in to this patch, and why they are the right thing > to do? Sorry to offload that, but it will be the most efficient route > to a review.

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-11-20 Thread James Greenhalgh
On Mon, Nov 20, 2017 at 05:39:25PM +, Steve Ellcey wrote: > Re-ping with a CC to the Aarch64 maintainers. If I'm completely honest with myself, I don't know enough about this area to review the patch. Szabolcs' OK holds a lot of weight with me, but I'd like to understand more of the

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-11-20 Thread Steve Ellcey
Re-ping with a CC to the Aarch64 maintainers. Steve Ellcey sell...@cavium.com On Tue, 2017-10-24 at 11:11 -0700, Steve Ellcey wrote: > Ping. > > Steve Ellcey > sell...@cavium.com > > On Tue, 2017-10-03 at 11:57 -0700, Steve Ellcey wrote: > > > > On Mon, 2017-10-02 at 15:38 +0100, Szabolcs

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-10-24 Thread Steve Ellcey
Ping. Steve Ellcey sell...@cavium.com On Tue, 2017-10-03 at 11:57 -0700, Steve Ellcey wrote: > On Mon, 2017-10-02 at 15:38 +0100, Szabolcs Nagy wrote: > > > >   > > looks good to me, but i cannot approve. > > > > (this will make libatomic depend on ifuncs on aarch64*-linux-gnu.) > If you build

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-10-03 Thread Steve Ellcey
On Mon, 2017-10-02 at 15:38 +0100, Szabolcs Nagy wrote: >  > looks good to me, but i cannot approve. > > (this will make libatomic depend on ifuncs on aarch64*-linux-gnu.) If you build GCC with default options, ifunc is enabled on aarch64 and used by libatomic but if you configure with

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-10-02 Thread Szabolcs Nagy
On 29/09/17 21:29, Steve Ellcey wrote: > On Thu, 2017-09-28 at 12:31 +0100, Szabolcs Nagy wrote: >> >> i think this should be improved, see below. > > Those were all good suggestions, here is a new patch that incorporates > the changes. I fixed the IFUNC_OPTIONS argument, > renamed

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-09-29 Thread Steve Ellcey
On Thu, 2017-09-28 at 12:31 +0100, Szabolcs Nagy wrote: >  > i think this should be improved, see below. Those were all good suggestions, here is a new patch that incorporates the changes.  I fixed the IFUNC_OPTIONS argument, renamed ARCH_AARCH64_LINUX_LSE, got rid of the auxv references, and

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-09-28 Thread Szabolcs Nagy
On 31/08/17 18:24, Steve Ellcey wrote: > On Tue, 2017-08-29 at 12:25 +0100, Szabolcs Nagy wrote: >> > >> > in glibc the hwcap is not used, because it has accesses to >> > cached dispatch info, but in libatomic using the hwcap >> > argument is the right way. > Here is an updated version of the

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-09-27 Thread Steve Ellcey
Ping. Steve Ellcey sell...@cavium.com On Thu, 2017-08-31 at 10:24 -0700, Steve Ellcey wrote: > On Tue, 2017-08-29 at 12:25 +0100, Szabolcs Nagy wrote: > > > >   > > in glibc the hwcap is not used, because it has accesses to > > cached dispatch info, but in libatomic using the hwcap > > argument

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-08-31 Thread Steve Ellcey
On Tue, 2017-08-29 at 12:25 +0100, Szabolcs Nagy wrote: >  > in glibc the hwcap is not used, because it has accesses to > cached dispatch info, but in libatomic using the hwcap > argument is the right way. Here is an updated version of the patch to allow aarch64 to use ifuncs in libatomic. The

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-08-30 Thread Steve Ellcey
On Tue, 2017-08-29 at 12:25 +0100, Szabolcs Nagy wrote: >  > it's a general bug that most ifunc users (e.g. in binutils > tests) declare the ifunc resolvers incorrectly, the correct > prototype is the way the dynamic linker invokes the resolver > in sysdeps/aarch64/dl-irel.h: > > static inline

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-08-29 Thread Szabolcs Nagy
On 28/08/17 19:25, Steve Ellcey wrote: > On Fri, 2017-08-25 at 15:37 +0100, Szabolcs Nagy wrote: > >> the use of ifunc in gcc target libraries was a mistake >> in my opinion, there are several known bugs in the ifunc >> design and uclibc/musl/bionic don't plan to support it. >> but at this point

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-08-28 Thread Steve Ellcey
On Fri, 2017-08-25 at 15:37 +0100, Szabolcs Nagy wrote: > the use of ifunc in gcc target libraries was a mistake > in my opinion, there are several known bugs in the ifunc > design and uclibc/musl/bionic don't plan to support it. > but at this point i dont have a better proposal for doing >

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-08-25 Thread Szabolcs Nagy
On 07/08/17 21:44, Steve Ellcey wrote: > This patch uses the libatomic IFUNC infrastructure so that aarch64 > machines that support the LSE instructions can use them. Note that > aarch64 still isn't enabling IFUNC support by default though I have > submitted a patch to do that. You can enable

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-08-24 Thread Steve Ellcey
Ping. > 2017-08-07  Steve Ellcey   > > * Makefile.am (ARCH_AARCH64_LINUX_LSE): Add IFUNC_OPTIONS and > libatomic_la_LIBADD. > * config/linux/aarch64/host-config.h: New file. > * config/linux/aarch64/init.c: New file. > * configure.ac

Re: [Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-08-07 Thread Steve Ellcey
It would probably help if I included the patch. Steve Ellcey sell...@cavium.com 2017-08-07  Steve Ellcey   * Makefile.am (ARCH_AARCH64_LINUX_LSE): Add IFUNC_OPTIONS and libatomic_la_LIBADD. * config/linux/aarch64/host-config.h: New file. *

[Patch][aarch64] Use IFUNCs to enable LSE instructions in libatomic on aarch64

2017-08-07 Thread Steve Ellcey
This patch uses the libatomic IFUNC infrastructure so that aarch64 machines that support the LSE instructions can use them.  Note that aarch64 still isn't enabling IFUNC support by default though I have submitted a patch to do that.  You can enable IFUNC support by configuring with