Wilco Dijkstra <wilco.dijks...@arm.com> writes: > Hi Richard, > > I've added a comment - as usual it's just a number. A quick grep in gcc and > glibc showed that priorities 98-101 are used, so I just went a bit below so it > has a higher priority than typical initializations.
Thanks. OK for trunk, and for backports after a trial period. Richard > Cheers, > Wilco > > Here is v2: > > Increase the priority of the init_have_lse_atomics constructor so it runs > before other constructors. This improves chances that rr works when LSE > atomics are supported. > > Regress and bootstrap pass, OK for commit? > > 2022-05-24 Wilco Dijkstra <wdijk...@arm.com> > > libgcc/ > PR libgcc/105708 > * config/aarch64/lse-init.c: Increase constructor priority. > > --- > > diff --git a/libgcc/config/aarch64/lse-init.c > b/libgcc/config/aarch64/lse-init.c > index > fc875b7fe80e947623e570eac130e7a14b516551..33b97c8d766895cf0101a851e1dc4ed6a1a053d9 > 100644 > --- a/libgcc/config/aarch64/lse-init.c > +++ b/libgcc/config/aarch64/lse-init.c > @@ -38,7 +38,9 @@ _Bool __aarch64_have_lse_atomics > > unsigned long int __getauxval (unsigned long int); > > -static void __attribute__((constructor)) > +/* Use a higher priority to ensure it runs before user constructors > + and library constructors with priority 100. */ > +static void __attribute__((constructor (90))) > init_have_lse_atomics (void) > { > unsigned long hwcap = __getauxval (AT_HWCAP);