diff options
Diffstat (limited to 'Zend/zend_alloc.c')
-rw-r--r-- | Zend/zend_alloc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Zend/zend_alloc.c b/Zend/zend_alloc.c index cd422e2d3e..7fe7ffbbd3 100644 --- a/Zend/zend_alloc.c +++ b/Zend/zend_alloc.c @@ -678,7 +678,7 @@ static inline unsigned int zend_mm_high_bit(size_t _size) __asm { bsr eax, _size } -#elif defined(__GNUC__) && (defined(__arm__) || defined(__aarch64__)) +#elif defined(__GNUC__) && (defined(__arm__) || defined(__aarch64__) || defined(__powerpc__)) return (8 * SIZEOF_SIZE_T - 1) - __builtin_clzl(_size); #else unsigned int n = 0; @@ -706,7 +706,7 @@ static inline unsigned int zend_mm_low_bit(size_t _size) __asm { bsf eax, _size } -#elif defined(__GNUC__) && (defined(__arm__) || defined(__aarch64__)) +#elif defined(__GNUC__) && (defined(__arm__) || defined(__aarch64__) || defined(__powerpc__)) return __builtin_ctzl(_size); #else static const int offset[16] = {4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0}; |