This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: [committed] hppa: Fix canonicalize of method and void pointers in comparison operations


On 9/14/18 5:44 PM, John David Anglin wrote:
> The attached change fixes the canonicalization of method and void
> pointers in comparisons against
> another method or function pointer on 32-bit hppa targets.  As far as I
> know, 32-bit hppa is the only
> architecture that requires function pointer canonicalization due to lazy
> binding.
> 
> Tested on hppa2.0w-hp-hpux11.11 and hppa-unknown-linux-gnu, GCC trunk
> and 8.  Committed to
> trunk and gcc-8 branch.
My recollection is HP's engineers were really concerned about the cost
of indirect calls and wanted to drop all the $$dyncall and associated
canonicalization of function pointers as they went to the 64 bit ABI.

This was made easier by no longer having to support MPE.  So they could
rely on more standard mechanisms to handle function pointers.

Jeff


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