This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc 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: [PATCH v3 3/9] s390: Refactor ifunc resolvers due to false debuginfo.


On 08/30/2016 02:31 PM, Florian Weimer wrote:
On 08/24/2016 04:04 PM, Stefan Liebler wrote:
 #if defined SHARED && IS_IN (libc)
+# define mempcpy __redirect_mempcpy
+# define __mempcpy __redirect___mempcpy
+/* Omit the mempcpy inline definitions because it would redefine
mempcpy.  */
+# define _HAVE_STRING_ARCH_mempcpy 1
+# include <string.h>
+# undef mempcpy
+# undef __mempcpy
 # include <ifunc-resolve.h>

The long-term maintainability of such #define trickery still concerns
me.  What would be needed to avoid that?

I think we need a possibility to omit the hidden_proto definitions for the ifunc'ed symbols when using libc_ifunc macro. Then we wouldn't need the redirection and could use the libc_ifunc macro instead of libc_ifunc_redirected.
Only thoughts. Not tested if there are other pitfalls.
(This obviously shouldn't be part of this patch sequence, I'm just
curious.)

Thanks,
Florian



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