Skip to content

Commit 3fb64be

Browse files
committed
Fix [-Wundef] warnings in Base64 implementation
1 parent 0b52e6c commit 3fb64be

File tree

2 files changed

+42
-42
lines changed

2 files changed

+42
-42
lines changed

ext/standard/base64.c

Lines changed: 41 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -325,12 +325,12 @@ static zend_always_inline int php_base64_decode_impl(const unsigned char *in, si
325325

326326
/* {{{ php_base64_encode */
327327

328-
#if ZEND_INTRIN_AVX2_NATIVE
328+
#ifdef ZEND_INTRIN_AVX2_NATIVE
329329
# undef ZEND_INTRIN_SSSE3_NATIVE
330330
# undef ZEND_INTRIN_SSSE3_RESOLVER
331331
# undef ZEND_INTRIN_SSSE3_FUNC_PROTO
332332
# undef ZEND_INTRIN_SSSE3_FUNC_PTR
333-
#elif ZEND_INTRIN_AVX2_FUNC_PROTO && ZEND_INTRIN_SSSE3_NATIVE
333+
#elif defined(ZEND_INTRIN_AVX2_FUNC_PROTO) && defined(ZEND_INTRIN_SSSE3_NATIVE)
334334
# undef ZEND_INTRIN_SSSE3_NATIVE
335335
# undef ZEND_INTRIN_SSSE3_RESOLVER
336336
# define ZEND_INTRIN_SSSE3_RESOLVER 1
@@ -341,7 +341,7 @@ static zend_always_inline int php_base64_decode_impl(const unsigned char *in, si
341341
# else
342342
# define ZEND_INTRIN_SSSE3_FUNC_DECL(func) ZEND_API func
343343
# endif
344-
#elif ZEND_INTRIN_AVX2_FUNC_PTR && ZEND_INTRIN_SSSE3_NATIVE
344+
#elif defined(ZEND_INTRIN_AVX2_FUNC_PTR) && defined(ZEND_INTRIN_SSSE3_NATIVE)
345345
# undef ZEND_INTRIN_SSSE3_NATIVE
346346
# undef ZEND_INTRIN_SSSE3_RESOLVER
347347
# define ZEND_INTRIN_SSSE3_RESOLVER 1
@@ -354,32 +354,32 @@ static zend_always_inline int php_base64_decode_impl(const unsigned char *in, si
354354
# endif
355355
#endif
356356

357-
#if ZEND_INTRIN_AVX2_NATIVE
357+
#ifdef ZEND_INTRIN_AVX2_NATIVE
358358
# include <immintrin.h>
359-
#elif ZEND_INTRIN_SSSE3_NATIVE
359+
#elif defined(ZEND_INTRIN_SSSE3_NATIVE)
360360
# include <tmmintrin.h>
361-
#elif (ZEND_INTRIN_SSSE3_RESOLVER || ZEND_INTRIN_AVX2_RESOLVER)
362-
# if ZEND_INTRIN_AVX2_RESOLVER
361+
#elif (defined(ZEND_INTRIN_SSSE3_RESOLVER) || defined(ZEND_INTRIN_AVX2_RESOLVER))
362+
# ifdef ZEND_INTRIN_AVX2_RESOLVER
363363
# include <immintrin.h>
364364
# else
365365
# include <tmmintrin.h>
366366
# endif /* (ZEND_INTRIN_SSSE3_RESOLVER || ZEND_INTRIN_AVX2_RESOLVER) */
367367
# include "Zend/zend_cpuinfo.h"
368368

369-
# if ZEND_INTRIN_AVX2_RESOLVER
369+
# ifdef ZEND_INTRIN_AVX2_RESOLVER
370370
ZEND_INTRIN_AVX2_FUNC_DECL(zend_string *php_base64_encode_avx2(const unsigned char *str, size_t length));
371371
ZEND_INTRIN_AVX2_FUNC_DECL(zend_string *php_base64_decode_ex_avx2(const unsigned char *str, size_t length, zend_bool strict));
372372
# endif
373373

374-
# if ZEND_INTRIN_SSSE3_RESOLVER
374+
# ifdef ZEND_INTRIN_SSSE3_RESOLVER
375375
ZEND_INTRIN_SSSE3_FUNC_DECL(zend_string *php_base64_encode_ssse3(const unsigned char *str, size_t length));
376376
ZEND_INTRIN_SSSE3_FUNC_DECL(zend_string *php_base64_decode_ex_ssse3(const unsigned char *str, size_t length, zend_bool strict));
377377
# endif
378378

379379
zend_string *php_base64_encode_default(const unsigned char *str, size_t length);
380380
zend_string *php_base64_decode_ex_default(const unsigned char *str, size_t length, zend_bool strict);
381381

382-
# if (ZEND_INTRIN_AVX2_FUNC_PROTO || ZEND_INTRIN_SSSE3_FUNC_PROTO)
382+
# if (defined(ZEND_INTRIN_AVX2_FUNC_PROTO) || defined(ZEND_INTRIN_SSSE3_FUNC_PROTO))
383383
PHPAPI zend_string *php_base64_encode(const unsigned char *str, size_t length) __attribute__((ifunc("resolve_base64_encode")));
384384
PHPAPI zend_string *php_base64_decode_ex(const unsigned char *str, size_t length, zend_bool strict) __attribute__((ifunc("resolve_base64_decode")));
385385

@@ -389,12 +389,12 @@ typedef zend_string *(*base64_decode_func_t)(const unsigned char *, size_t, zend
389389
ZEND_NO_SANITIZE_ADDRESS
390390
ZEND_ATTRIBUTE_UNUSED /* clang mistakenly warns about this */
391391
static base64_encode_func_t resolve_base64_encode() {
392-
# if ZEND_INTRIN_AVX2_FUNC_PROTO
392+
# ifdef ZEND_INTRIN_AVX2_FUNC_PROTO
393393
if (zend_cpu_supports_avx2()) {
394394
return php_base64_encode_avx2;
395395
} else
396396
# endif
397-
#if ZEND_INTRIN_SSSE3_FUNC_PROTO
397+
#ifdef ZEND_INTRIN_SSSE3_FUNC_PROTO
398398
if (zend_cpu_supports_ssse3()) {
399399
return php_base64_encode_ssse3;
400400
}
@@ -405,12 +405,12 @@ static base64_encode_func_t resolve_base64_encode() {
405405
ZEND_NO_SANITIZE_ADDRESS
406406
ZEND_ATTRIBUTE_UNUSED /* clang mistakenly warns about this */
407407
static base64_decode_func_t resolve_base64_decode() {
408-
# if ZEND_INTRIN_AVX2_FUNC_PROTO
408+
# ifdef ZEND_INTRIN_AVX2_FUNC_PROTO
409409
if (zend_cpu_supports_avx2()) {
410410
return php_base64_decode_ex_avx2;
411411
} else
412412
# endif
413-
#if ZEND_INTRIN_SSSE3_FUNC_PROTO
413+
#ifdef ZEND_INTRIN_SSSE3_FUNC_PROTO
414414
if (zend_cpu_supports_ssse3()) {
415415
return php_base64_decode_ex_ssse3;
416416
}
@@ -431,13 +431,13 @@ PHPAPI zend_string *php_base64_decode_ex(const unsigned char *str, size_t length
431431

432432
PHP_MINIT_FUNCTION(base64_intrin)
433433
{
434-
# if ZEND_INTRIN_AVX2_FUNC_PTR
434+
# ifdef ZEND_INTRIN_AVX2_FUNC_PTR
435435
if (zend_cpu_supports_avx2()) {
436436
php_base64_encode_ptr = php_base64_encode_avx2;
437437
php_base64_decode_ex_ptr = php_base64_decode_ex_avx2;
438438
} else
439439
# endif
440-
#if ZEND_INTRIN_SSSE3_FUNC_PTR
440+
#ifdef ZEND_INTRIN_SSSE3_FUNC_PTR
441441
if (zend_cpu_supports_ssse3()) {
442442
php_base64_encode_ptr = php_base64_encode_ssse3;
443443
php_base64_decode_ex_ptr = php_base64_decode_ex_ssse3;
@@ -452,8 +452,8 @@ PHP_MINIT_FUNCTION(base64_intrin)
452452
# endif /* (ZEND_INTRIN_AVX2_FUNC_PROTO || ZEND_INTRIN_SSSE3_FUNC_PROTO) */
453453
#endif /* ZEND_INTRIN_AVX2_NATIVE */
454454

455-
#if ZEND_INTRIN_AVX2_NATIVE || ZEND_INTRIN_AVX2_RESOLVER
456-
# if ZEND_INTRIN_AVX2_RESOLVER && defined(HAVE_FUNC_ATTRIBUTE_TARGET)
455+
#if defined(ZEND_INTRIN_AVX2_NATIVE) || defined(ZEND_INTRIN_AVX2_RESOLVER)
456+
# if defined(ZEND_INTRIN_AVX2_RESOLVER) && defined(HAVE_FUNC_ATTRIBUTE_TARGET)
457457
static __m256i php_base64_encode_avx2_reshuffle(__m256i in) __attribute__((target("avx2")));
458458
static __m256i php_base64_encode_avx2_translate(__m256i in) __attribute__((target("avx2")));
459459
# endif
@@ -517,9 +517,9 @@ static __m256i php_base64_encode_avx2_translate(__m256i in)
517517
}
518518
#endif /* ZEND_INTRIN_AVX2_NATIVE || (ZEND_INTRIN_AVX2_RESOLVER && !ZEND_INTRIN_SSSE3_NATIVE) */
519519

520-
#if ZEND_INTRIN_SSSE3_NATIVE || ZEND_INTRIN_SSSE3_RESOLVER
520+
#if defined(ZEND_INTRIN_SSSE3_NATIVE) || defined(ZEND_INTRIN_SSSE3_RESOLVER)
521521

522-
# if ZEND_INTRIN_SSSE3_RESOLVER && defined(HAVE_FUNC_ATTRIBUTE_TARGET)
522+
# if defined(ZEND_INTRIN_SSSE3_RESOLVER) && defined(HAVE_FUNC_ATTRIBUTE_TARGET)
523523
static __m128i php_base64_encode_ssse3_reshuffle(__m128i in) __attribute__((target("ssse3")));
524524
static __m128i php_base64_encode_ssse3_translate(__m128i in) __attribute__((target("ssse3")));
525525
# endif
@@ -600,10 +600,10 @@ static __m128i php_base64_encode_ssse3_translate(__m128i in)
600600

601601
#endif /* ZEND_INTRIN_SSSE3_NATIVE || (ZEND_INTRIN_SSSE3_RESOLVER && !ZEND_INTRIN_AVX2_NATIVE) */
602602

603-
#if ZEND_INTRIN_AVX2_NATIVE || ZEND_INTRIN_AVX2_RESOLVER || ZEND_INTRIN_SSSE3_NATIVE || ZEND_INTRIN_SSSE3_RESOLVER
604-
# if ZEND_INTRIN_AVX2_NATIVE || ZEND_INTRIN_SSSE3_NATIVE
603+
#if defined(ZEND_INTRIN_AVX2_NATIVE) || defined(ZEND_INTRIN_AVX2_RESOLVER) || defined(ZEND_INTRIN_SSSE3_NATIVE) || defined(ZEND_INTRIN_SSSE3_RESOLVER)
604+
# if defined(ZEND_INTRIN_AVX2_NATIVE) || defined(ZEND_INTRIN_SSSE3_NATIVE)
605605
PHPAPI zend_string *php_base64_encode(const unsigned char *str, size_t length)
606-
# elif ZEND_INTRIN_AVX2_RESOLVER
606+
# elif defined(ZEND_INTRIN_AVX2_RESOLVER)
607607
zend_string *php_base64_encode_avx2(const unsigned char *str, size_t length)
608608
# else /* ZEND_INTRIN_SSSE3_RESOLVER */
609609
zend_string *php_base64_encode_ssse3(const unsigned char *str, size_t length)
@@ -615,7 +615,7 @@ zend_string *php_base64_encode_ssse3(const unsigned char *str, size_t length)
615615

616616
result = zend_string_safe_alloc(((length + 2) / 3), 4 * sizeof(char), 0, 0);
617617
o = (unsigned char *)ZSTR_VAL(result);
618-
# if ZEND_INTRIN_AVX2_NATIVE || ZEND_INTRIN_AVX2_RESOLVER
618+
# if defined(ZEND_INTRIN_AVX2_NATIVE) || defined(ZEND_INTRIN_AVX2_RESOLVER)
619619
if (length > 31) {
620620
__m256i s = _mm256_loadu_si256((__m256i *)c);
621621

@@ -647,7 +647,7 @@ zend_string *php_base64_encode_ssse3(const unsigned char *str, size_t length)
647647
return result;
648648
}
649649

650-
# if ZEND_INTRIN_SSSE3_RESOLVER && ZEND_INTRIN_AVX2_RESOLVER
650+
# if defined(ZEND_INTRIN_SSSE3_RESOLVER) && defined(ZEND_INTRIN_AVX2_RESOLVER)
651651
zend_string *php_base64_encode_ssse3(const unsigned char *str, size_t length)
652652
{
653653
const unsigned char *c = str;
@@ -670,8 +670,8 @@ zend_string *php_base64_encode_ssse3(const unsigned char *str, size_t length)
670670

671671
/* }}} */
672672

673-
#if ZEND_INTRIN_AVX2_NATIVE || ZEND_INTRIN_AVX2_RESOLVER
674-
# if ZEND_INTRIN_AVX2_RESOLVER && defined(HAVE_FUNC_ATTRIBUTE_TARGET)
673+
#if defined(ZEND_INTRIN_AVX2_NATIVE) || defined(ZEND_INTRIN_AVX2_RESOLVER)
674+
# if defined(ZEND_INTRIN_AVX2_RESOLVER) && defined(HAVE_FUNC_ATTRIBUTE_TARGET)
675675
static __m256i php_base64_decode_avx2_reshuffle(__m256i in) __attribute__((target("avx2")));
676676
# endif
677677

@@ -691,8 +691,8 @@ static __m256i php_base64_decode_avx2_reshuffle(__m256i in)
691691
}
692692
#endif
693693

694-
#if ZEND_INTRIN_SSSE3_NATIVE || ZEND_INTRIN_SSSE3_RESOLVER
695-
# if ZEND_INTRIN_SSSE3_RESOLVER && defined(HAVE_FUNC_ATTRIBUTE_TARGET)
694+
#if defined(ZEND_INTRIN_SSSE3_NATIVE) || defined(ZEND_INTRIN_SSSE3_RESOLVER)
695+
# if defined(ZEND_INTRIN_SSSE3_RESOLVER) && defined(HAVE_FUNC_ATTRIBUTE_TARGET)
696696
static __m128i php_base64_decode_ssse3_reshuffle(__m128i in) __attribute__((target("ssse3")));
697697
# endif
698698

@@ -773,10 +773,10 @@ static __m128i php_base64_decode_ssse3_reshuffle(__m128i in)
773773

774774
#endif
775775

776-
#if ZEND_INTRIN_AVX2_NATIVE || ZEND_INTRIN_AVX2_RESOLVER || ZEND_INTRIN_SSSE3_NATIVE || ZEND_INTRIN_SSSE3_RESOLVER
777-
# if ZEND_INTRIN_AVX2_NATIVE || ZEND_INTRIN_SSSE3_NATIVE
776+
#if defined(ZEND_INTRIN_AVX2_NATIVE) || defined(ZEND_INTRIN_AVX2_RESOLVER) || defined(ZEND_INTRIN_SSSE3_NATIVE) || defined(ZEND_INTRIN_SSSE3_RESOLVER)
777+
# if defined(ZEND_INTRIN_AVX2_NATIVE) || defined(ZEND_INTRIN_SSSE3_NATIVE)
778778
PHPAPI zend_string *php_base64_decode_ex(const unsigned char *str, size_t length, zend_bool strict)
779-
# elif ZEND_INTRIN_AVX2_RESOLVER
779+
# elif defined(ZEND_INTRIN_AVX2_RESOLVER)
780780
zend_string *php_base64_decode_ex_avx2(const unsigned char *str, size_t length, zend_bool strict)
781781
# else
782782
zend_string *php_base64_decode_ex_ssse3(const unsigned char *str, size_t length, zend_bool strict)
@@ -792,7 +792,7 @@ zend_string *php_base64_decode_ex_ssse3(const unsigned char *str, size_t length,
792792

793793
/* See: "Faster Base64 Encoding and Decoding using AVX2 Instructions"
794794
* https://arxiv.org/pdf/1704.00605.pdf */
795-
# if ZEND_INTRIN_AVX2_NATIVE || ZEND_INTRIN_AVX2_RESOLVER
795+
# if defined(ZEND_INTRIN_AVX2_NATIVE) || defined(ZEND_INTRIN_AVX2_RESOLVER)
796796
while (length > 31 + 11 + 2) {
797797
__m256i lut_lo, lut_hi, lut_roll;
798798
__m256i hi_nibbles, lo_nibbles, hi, lo;
@@ -880,12 +880,12 @@ zend_string *php_base64_decode_ex_ssse3(const unsigned char *str, size_t length,
880880
# endif
881881
#endif /* ZEND_INTRIN_AVX2_NATIVE || ZEND_INTRIN_AVX2_RESOLVER || ZEND_INTRIN_SSSE3_NATIVE || ZEND_INTRIN_SSSE3_RESOLVER */
882882

883-
#if !ZEND_INTRIN_AVX2_NATIVE && !ZEND_INTRIN_SSSE3_NATIVE
884-
#if ZEND_INTRIN_AVX2_RESOLVER || ZEND_INTRIN_SSSE3_RESOLVER
883+
#if !defined(ZEND_INTRIN_AVX2_NATIVE) && !defined(ZEND_INTRIN_SSSE3_NATIVE)
884+
# if defined(ZEND_INTRIN_AVX2_RESOLVER) || defined(ZEND_INTRIN_SSSE3_RESOLVER)
885885
zend_string *php_base64_encode_default(const unsigned char *str, size_t length)
886-
#else
886+
# else
887887
PHPAPI zend_string *php_base64_encode(const unsigned char *str, size_t length)
888-
#endif
888+
# endif
889889
{
890890
unsigned char *p;
891891
zend_string *result;
@@ -901,12 +901,12 @@ PHPAPI zend_string *php_base64_encode(const unsigned char *str, size_t length)
901901
}
902902
#endif
903903

904-
#if !ZEND_INTRIN_AVX2_NATIVE && !ZEND_INTRIN_SSSE3_NATIVE
905-
#if ZEND_INTRIN_AVX2_RESOLVER || ZEND_INTRIN_SSSE3_RESOLVER
904+
#if !defined(ZEND_INTRIN_AVX2_NATIVE) && !defined(ZEND_INTRIN_SSSE3_NATIVE)
905+
# if defined(ZEND_INTRIN_AVX2_RESOLVER) || defined(ZEND_INTRIN_SSSE3_RESOLVER)
906906
zend_string *php_base64_decode_ex_default(const unsigned char *str, size_t length, zend_bool strict)
907-
#else
907+
# else
908908
PHPAPI zend_string *php_base64_decode_ex(const unsigned char *str, size_t length, zend_bool strict)
909-
#endif
909+
# endif
910910
{
911911
zend_string *result;
912912
size_t outl = 0;

ext/standard/base64.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
5858
*/
5959

60-
#if (ZEND_INTRIN_AVX2_FUNC_PTR || ZEND_INTRIN_SSSE3_FUNC_PTR) && !ZEND_INTRIN_AVX2_NATIVE
60+
#if (defined(ZEND_INTRIN_AVX2_FUNC_PTR) || defined(ZEND_INTRIN_SSSE3_FUNC_PTR)) && !defined(ZEND_INTRIN_AVX2_NATIVE)
6161
PHP_MINIT_FUNCTION(base64_intrin);
6262
#endif
6363

0 commit comments

Comments
 (0)