Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Mar 2019 09:39:35 +0530
From:      Mayuresh Kathe <mayuresh@kathe.in>
To:        Polytropon <freebsd@edvax.de>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Why very little documentation on "ifunc"?
Message-ID:  <4ab839e063955c1d3fa3cfca312ef29d@kathe.in>
In-Reply-To: <20190330042940.ed91d5f6.freebsd@edvax.de>
References:  <dd8f36db22c27bfd2cbdf1d406099bfa@kathe.in> <20190330042940.ed91d5f6.freebsd@edvax.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2019-03-30 08:59 AM, Polytropon wrote:
> On Sat, 30 Mar 2019 07:28:23 +0530, Mayuresh Kathe wrote:
>> Ever since I stumbled upon "ifunc" I have been unable to find good
>> enough documentation regarding it under FreeBSD, that was till "Ed
>> Maste" pointed out;
>> https://jasoncc.github.io/gnu_gcc_glibc/gnu-ifunc.html
>> 
>> "ifunc" seems to be a really good tool, wonder why it isn't as well
>> documented as rest of the stuff under FreeBSD.
> 
> From what I see, ifunc is part of GCC, and FreeBSD does no longer
> use GCC as the system compiler (after switching to Clang/LLVM).
> The case for ifunc documentation therefore has to be discussed
> primarily in the context of GNU development tools.
> 
> 	https://sourceware.org/glibc/wiki/GNU_IFUNC
> 
> Of course, Clang/LLVM also has (limited) support for it:
> 
> 	https://clang.llvm.org/docs/AttributeReference.html#ifunc
> 
> So this is nothing FreeBSD-specific which should be covered by
> OS documentation in the first place. But it could maybe find a
> place in the FreeBSD Porter's Handbook.

Not really, as "Ed Maste" had pointed out to me, "ifunc" was only 
_designed_ by GNU, the "ifunc" implementation under FreeBSD is 
completely native to FreeBSD.

I was first directed to "ifunc" by someone called "kostik" on the 
freebsd-tech mailing list.
I could find nothing about it under the FreeBSD documentation or even 
via Google, but that was because I was being FreeBSD specific. I asked 
"Ed Maste" about it and he shared that URL I had put out in my first 
email.

It's sad that an advanced technology such as "ifunc" is not even 
documented in the Developer's Handbook.

~Mayuresh



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4ab839e063955c1d3fa3cfca312ef29d>