fptr.c (__canonicalize_funcptr_for_compare): Don't set least-significant bit in function pointer for fixup.

* config/pa/fptr.c (__canonicalize_funcptr_for_compare): Don't set
	least-significant bit in function pointer for fixup.

From-SVN: r237574
This commit is contained in:
John David Anglin 2016-06-18 17:49:58 +00:00
parent 81d8cd9b33
commit 9f92937bdc
2 changed files with 6 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2016-06-18 John David Anglin <danglin@gcc.gnu.org>
* config/pa/fptr.c (__canonicalize_funcptr_for_compare): Don't set
least-significant bit in function pointer for fixup.
2016-06-05 Aaron Conole <aconole@redhat.com>
Nathan Sidwell <nathan@acm.org>

View File

@ -113,7 +113,7 @@ __canonicalize_funcptr_for_compare (fptr_t fptr)
/* Build a plabel for an indirect call to _dl_fixup. */
fixup_plabel[0] = (unsigned int) iptr + 8; /* address of fixup */
fixup_plabel[1] = got[-1]; /* ltp for fixup */
fixup = (fixup_t) ((int) fixup_plabel | 3);
fixup = (fixup_t) ((int) fixup_plabel | 2);
/* Call fixup to resolve the function address. got[1] contains the
link_map pointer and plabel[1] the relocation offset. */