From 986a506481d4edb3b5c50c8245e915e39d248c7d Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Mon, 3 Jun 2019 21:07:25 +0000 Subject: powerpc: Simplify vsyscall internal macros This patch simplifies the powerpc internal macros for vDSO calls by: - Removing INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK, used solely on get_timebase_freq. - Adjust INTERNAL_VSYSCALL_CALL_TYPE powerpc32 to follow powerpc64 argument ordering. - Use HAVE_*_VSYSCALL instead of explicit strings. - Make powerpc libc-vdso.h include generic implementation. No semantic change expected, checked on powerpc-linux-gnu-power4, powerpc64-linux-gnu, and powerpc64le-linux-gnu. * sysdeps/unix/sysv/linux/libc-vdso.h (VDSO_IFUNC_RET): Define if not defined. * sysdeps/unix/sysv/linux/powerpc/get_timebase_freq.c (__get_timebase_freq): Remove use of INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK. (get_timebase_freq_fallback): New symbol. * sysdeps/unix/sysv/linux/powerpc/gettimeofday.c (time): Use HAVE_GETTIMEOFDAY_VSYSCALL. * sysdeps/unix/sysv/linux/powerpc/time.c (gettimeofday): Use HAVE_TIME_VSYSCALL. * sysdeps/unix/sysv/linux/powerpc/libc-vdso.h: Include generic implementation. * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INTERNAL_VSYSCALL_CALL_TYPE): Make calling convention similar to powerpc64. (INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK): Remove macro. * .../sysv/linux/powerpc/powerpc64/sysdep.h (INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK): Likewise. * sysdeps/unix/sysv/linux/powerpc/sysdep.h (HAVE_GETTIMEOFDAY_VSYSCALL): Define. --- ChangeLog | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'ChangeLog') diff --git a/ChangeLog b/ChangeLog index 6f177f9330..71cfb3f2dc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,26 @@ 2019-09-17 Adhemerval Zanella + * sysdeps/unix/sysv/linux/libc-vdso.h (VDSO_IFUNC_RET): Define if not + defined. + * sysdeps/unix/sysv/linux/powerpc/get_timebase_freq.c + (__get_timebase_freq): Remove use of + INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK. + (get_timebase_freq_fallback): New symbol. + * sysdeps/unix/sysv/linux/powerpc/gettimeofday.c (time): Use + HAVE_GETTIMEOFDAY_VSYSCALL. + * sysdeps/unix/sysv/linux/powerpc/time.c (gettimeofday): Use + HAVE_TIME_VSYSCALL. + * sysdeps/unix/sysv/linux/powerpc/libc-vdso.h: Include generic + implementation. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h + (INTERNAL_VSYSCALL_CALL_TYPE): Make calling convention similar to + powerpc64. + (INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK): Remove macro. + * .../sysv/linux/powerpc/powerpc64/sysdep.h + (INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK): Likewise. + * sysdeps/unix/sysv/linux/powerpc/sysdep.h + (HAVE_GETTIMEOFDAY_VSYSCALL): Define. + * sysdeps/powerpc/powerpc32/backtrace.c (is_sigtramp_address, is_sigtramp_address_rt): Use HAVE_SIGTRAMP_{RT}32 instead of SHARED. * sysdeps/powerpc/powerpc64/backtrace.c (is_sigtramp_address): -- cgit 1.4.1