diff --git a/sys/arm64/include/ifunc.h b/sys/arm64/include/ifunc.h --- a/sys/arm64/include/ifunc.h +++ b/sys/arm64/include/ifunc.h @@ -39,7 +39,8 @@ uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, \ uint64_t))args __used; \ qual ret_type name args __attribute__((ifunc(#name "_resolver"))); \ - static ret_type (*name##_resolver(uint64_t _arg1 __unused, \ + static ret_type __attribute__((no_sanitize("memory"))) \ + (*name##_resolver(uint64_t _arg1 __unused, \ uint64_t _arg2 __unused, uint64_t _arg3 __unused, \ uint64_t _arg4 __unused, uint64_t _arg5 __unused, \ uint64_t _arg6 __unused, uint64_t _arg7 __unused, \ diff --git a/sys/powerpc/include/ifunc.h b/sys/powerpc/include/ifunc.h --- a/sys/powerpc/include/ifunc.h +++ b/sys/powerpc/include/ifunc.h @@ -45,7 +45,8 @@ register_t, register_t, register_t, register_t, register_t, \ register_t))args __used; \ qual ret_type name args __attribute__((ifunc(#name "_resolver"))); \ - static ret_type (*name##_resolver( \ + static ret_type __attribute__((no_sanitize("memory"))) \ + (*name##_resolver( \ register_t cpu_features, \ register_t cpu_features2, \ register_t arg3 __unused, \ diff --git a/sys/x86/include/ifunc.h b/sys/x86/include/ifunc.h --- a/sys/x86/include/ifunc.h +++ b/sys/x86/include/ifunc.h @@ -38,7 +38,8 @@ static ret_type (*name##_resolver(uint32_t, uint32_t, uint32_t, \ uint32_t))args __used; \ qual ret_type name args __attribute__((ifunc(#name "_resolver"))); \ - static ret_type (*name##_resolver( \ + static ret_type __attribute__((no_sanitize("memory"))) \ + (*name##_resolver( \ uint32_t cpu_feature __unused, \ uint32_t cpu_feature2 __unused, \ uint32_t cpu_stdext_feature __unused, \