diff options
-rw-r--r-- | package/php/Makefile | 4 | ||||
-rw-r--r-- | package/php/patches/patch-ext_standard_crc32_c | 69 |
2 files changed, 54 insertions, 19 deletions
diff --git a/package/php/Makefile b/package/php/Makefile index c7b7818d4..83aa35b0d 100644 --- a/package/php/Makefile +++ b/package/php/Makefile @@ -4,9 +4,9 @@ include $(ADK_TOPDIR)/rules.mk PKG_NAME:= php -PKG_VERSION:= 7.4.24 +PKG_VERSION:= 7.4.25 PKG_RELEASE:= 1 -PKG_HASH:= ff7658ee2f6d8af05b48c21146af5f502e121def4e76e862df5ec9fa06e98734 +PKG_HASH:= 12a758f1d7fee544387a28d3cf73226f47e3a52fb3049f07fcc37d156d393c0a PKG_DESCR:= php language interpreter PKG_SECTION:= dev/lang PKG_BUILDDEP:= libpng diff --git a/package/php/patches/patch-ext_standard_crc32_c b/package/php/patches/patch-ext_standard_crc32_c index c04b5b80c..2d55e1ed5 100644 --- a/package/php/patches/patch-ext_standard_crc32_c +++ b/package/php/patches/patch-ext_standard_crc32_c @@ -1,17 +1,21 @@ ---- php-7.4.24.orig/ext/standard/crc32.c 2021-09-21 13:23:20.000000000 +0200 -+++ php-7.4.24/ext/standard/crc32.c 2021-09-29 10:27:37.144637295 +0200 -@@ -23,7 +23,6 @@ - #if HAVE_AARCH64_CRC32 - # include <arm_acle.h> - # if defined(__linux__) --# include <sys/auxv.h> - # include <asm/hwcap.h> - # endif +--- php-7.4.25.orig/ext/standard/crc32.c 2021-10-19 17:18:19.000000000 +0200 ++++ php-7.4.25/ext/standard/crc32.c 2021-10-29 14:58:12.777563842 +0200 +@@ -20,56 +20,6 @@ + #include "basic_functions.h" + #include "crc32.h" -@@ -32,13 +31,6 @@ static inline int has_crc32_insn() { - static int res = -1; - if (res != -1) - return res; +-#if HAVE_AARCH64_CRC32 +-# include <arm_acle.h> +-# if defined(__linux__) +-# include <sys/auxv.h> +-# include <asm/hwcap.h> +-# endif +- +-static inline int has_crc32_insn() { +- /* Only go through the runtime detection once. */ +- static int res = -1; +- if (res != -1) +- return res; -# if defined(HWCAP_CRC32) - res = getauxval(AT_HWCAP) & HWCAP_CRC32; - return res; @@ -19,10 +23,41 @@ - res = getauxval(AT_HWCAP2) & HWCAP2_CRC32; - return res; -# else - res = 0; - return res; - # endif -@@ -85,13 +77,6 @@ PHP_NAMED_FUNCTION(php_if_crc32) +- res = 0; +- return res; +-# endif +-} +- +-# pragma GCC push_options +-# pragma GCC target ("+nothing+crc") +-static uint32_t crc32_aarch64(uint32_t crc, char *p, size_t nr) { +- while (nr >= sizeof(uint64_t)) { +- crc = __crc32d(crc, *(uint64_t *)p); +- p += sizeof(uint64_t); +- nr -= sizeof(uint64_t); +- } +- if (nr >= sizeof(int32_t)) { +- crc = __crc32w(crc, *(uint32_t *)p); +- p += sizeof(uint32_t); +- nr -= sizeof(uint32_t); +- } +- if (nr >= sizeof(int16_t)) { +- crc = __crc32h(crc, *(uint16_t *)p); +- p += sizeof(uint16_t); +- nr -= sizeof(uint16_t); +- } +- if (nr) { +- crc = __crc32b(crc, *p); +- } +- return crc; +-} +-# pragma GCC pop_options +-#endif +- + /* {{{ proto string crc32(string str) + Calculate the crc32 polynomial of a string */ + PHP_NAMED_FUNCTION(php_if_crc32) +@@ -85,13 +35,6 @@ PHP_NAMED_FUNCTION(php_if_crc32) crc = crcinit^0xFFFFFFFF; |