From 88d52ae7aabec35913b8b4115315729e5f492a27 Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Fri, 28 Jun 2019 16:55:54 +0200 Subject: [PATCH] Mark ifunc resolver functions as unused It looks like clang doesn't see that these are used through __attribute__((ifunc)) and generates a warning. --- ext/standard/base64.c | 2 ++ ext/standard/string.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/ext/standard/base64.c b/ext/standard/base64.c index 3286b7d30d..c181d8228b 100644 --- a/ext/standard/base64.c +++ b/ext/standard/base64.c @@ -217,6 +217,7 @@ PHPAPI zend_string *php_base64_encode(const unsigned char *str, size_t length) _ PHPAPI zend_string *php_base64_decode_ex(const unsigned char *str, size_t length, zend_bool strict) __attribute__((ifunc("resolve_base64_decode"))); ZEND_NO_SANITIZE_ADDRESS +ZEND_ATTRIBUTE_UNUSED /* clang mistakenly warns about this */ static void *resolve_base64_encode() { # if ZEND_INTRIN_AVX2_FUNC_PROTO if (zend_cpu_supports_avx2()) { @@ -232,6 +233,7 @@ static void *resolve_base64_encode() { } ZEND_NO_SANITIZE_ADDRESS +ZEND_ATTRIBUTE_UNUSED /* clang mistakenly warns about this */ static void *resolve_base64_decode() { # if ZEND_INTRIN_AVX2_FUNC_PROTO if (zend_cpu_supports_avx2()) { diff --git a/ext/standard/string.c b/ext/standard/string.c index f8b808d1ad..d097be78b7 100644 --- a/ext/standard/string.c +++ b/ext/standard/string.c @@ -3881,6 +3881,7 @@ PHPAPI zend_string *php_addslashes(zend_string *str) __attribute__((ifunc("resol PHPAPI void php_stripslashes(zend_string *str) __attribute__((ifunc("resolve_stripslashes"))); ZEND_NO_SANITIZE_ADDRESS +ZEND_ATTRIBUTE_UNUSED /* clang mistakenly warns about this */ static void *resolve_addslashes() { if (zend_cpu_supports_sse42()) { return php_addslashes_sse42; @@ -3889,6 +3890,7 @@ static void *resolve_addslashes() { } ZEND_NO_SANITIZE_ADDRESS +ZEND_ATTRIBUTE_UNUSED /* clang mistakenly warns about this */ static void *resolve_stripslashes() { if (zend_cpu_supports_sse42()) { return php_stripslashes_sse42; -- 2.40.0