[PATCH] pch: Add support for PCH for relocatable executables

John David Anglin dave.anglin@bell.net
Mon Nov 8 21:03:09 GMT 2021

On 2021-11-08 2:48 p.m., Jakub Jelinek wrote:
> Not really sure about PA or IA-64 function descriptors, are any of those
> allocated by the dynamic linker rather than created by the static linker?
On PA, the static linker creates all function descriptors.  The dynamic linker is responsible for
resolving descriptors when lazy binding is used.

The primary difference between 32 and 64-bit descriptors is that there can be multiple descriptors
that resolve to the same function in the 32-bit run time.  In the 64-bit case, there is one official
procedure descriptor for each function.
> I guess instead of removing the c-pch.c changes we could remember there
> not just a function pointer, but also a data pointer and compare if both
> are either the same or have the same load bias and punt only if they
> have different bias.  Though, on architecture where all function pointers
> would be dynamically allocated and could change any time even that wouldn't
> be really a reliable check.
There is no call to dynamically allocate a descriptor but it is possible for code to dynamically build a descriptor.


John David Anglin  dave.anglin@bell.net

More information about the Gcc-patches mailing list