[PATCH][aarch64] Change argument type passed to ifunc resolvers
Steve Ellcey
sellcey@cavium.com
Thu Aug 31 16:02:00 GMT 2017
This is a one line patch split out from:
https://sourceware.org/ml/libc-alpha/2017-08/msg01310.html
It just changes the type of the argument passed to ifunc resolvers from
'unsigned int long' to 'uint64_t'. Â This should make no difference for
the existing LP64 ABI but will also work for the new ILP32 ABI. Â I
would like to check this in before submitting a patch to GCC that uses
IFUNCs in libatomic so that the types agree.
Tested on aarch64, OK to checkin?
Steve Ellcey
sellcey@cavium.com
2017-08-31  Steve Ellcey  <sellcey@cavium.com>
* sysdeps/aarch64/dl-irel.h: (elf_ifunc_invoke): Change argument type
in resolver call.
diff --git a/sysdeps/aarch64/dl-irel.h b/sysdeps/aarch64/dl-irel.h
index 4a80275..a794c82 100644
--- a/sysdeps/aarch64/dl-irel.h
+++ b/sysdeps/aarch64/dl-irel.h
@@ -31,7 +31,7 @@ static inline ElfW(Addr)
 __attribute ((always_inline))
 elf_ifunc_invoke (ElfW(Addr) addr)
 {
-Â Â return ((ElfW(Addr) (*) (unsigned long int)) (addr)) (GLRO(dl_hwcap));
+Â Â return ((ElfW(Addr) (*) (uint64_t)) (addr)) (GLRO(dl_hwcap));
 }
Â
 static inline void
More information about the Libc-alpha
mailing list