This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] S/390: STT_GNU_IFUNC support


On Tuesday, July 03, 2012 12:19:44 Andreas Krebbel wrote:
> On 07/02/2012 04:21 PM, Andreas Jaeger wrote:
> > On Monday, July 02, 2012 15:52:49 Andreas Krebbel wrote:
> >> On Mon, Jul 02, 2012 at 03:20:30PM +0200, Andreas Jaeger wrote:
> >>> So, do you want to add a configure test and only enable the IFUNC
> >>> support with new binutils? Or how do you want to handle the
> >>> requirement?
> >> 
> >> I'll add a configure check when it is clear which Binutils version
> >> will include the support.
> > 
> > I suggest to check for the feature, not for the version, the
> > configure file already has support for this, so this might be
> > enough:
> > AC_CACHE_CHECK([for assembler gnu_indirect_function symbol type
> > support],
> > 
> >                libc_cv_asm_gnu_indirect_function, [dnl
> > 
> > cat > conftest.s <<EOF
> > .type foo,%gnu_indirect_function
> > EOF
> > if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD
> > 2>&AS_MESSAGE_LOG_FD;
> > then
> > 
> >   libc_cv_asm_gnu_indirect_function=yes
> > 
> > else
> > 
> >   libc_cv_asm_gnu_indirect_function=no
> > 
> > fi
> > rm -f conftest*])
> 
> This only checks whether the assembler supports gnu_indirect_function
> as symbol type not whether the linker actually handles IFUNC symbols
> for the target.

In that case, I suggest to enhance the configure check with a linker test 
as well,

Andreas
-- 
 Andreas Jaeger aj@{suse.com,opensuse.org} Twitter/Identica: jaegerandi
  SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
   GF: Jeff Hawn,Jennifer Guild,Felix Imendörffer,HRB16746 (AG Nürnberg)
    GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]