ref: d924c5cf7e5554b22f7edfcb9e98670c4c02c3f0
parent: a4429959b030e4a6e4aa41baa4306950158224f1
author: Stephen McDowell <svenevs.dev@gmail.com>
date: Fri Jun 19 00:14:39 EDT 2020
[sfnt] Support Intel compilers. * src/sfnt/pngshim.c (premultiply_data): Intel compilers do not currently support `__builtin_shuffle'.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2020-06-19 Stephen McDowell <svenevs.dev@gmail.com>
+
+ [sfnt] Support Intel compilers.
+
+ * src/sfnt/pngshim.c (premultiply_data): Intel compilers do not
+ currently support `__builtin_shuffle'.
+
2020-06-19 Sebastian Rasmussen <sebras@gmail.com>
[base] Fix memory leak (#58611).
--- a/src/sfnt/pngshim.c
+++ b/src/sfnt/pngshim.c
@@ -60,7 +60,12 @@
/* predates clang; the `__BYTE_ORDER__' preprocessor symbol was */
/* introduced in gcc 4.6 and clang 3.2, respectively. */
/* `__builtin_shuffle' for gcc was introduced in gcc 4.7.0. */
-#if ( ( defined( __GNUC__ ) && \
+ /* */
+ /* Intel compilers do not currently support __builtin_shuffle; */
+
+ /* The Intel check must be first. */
+#if !defined( __INTEL_COMPILER ) && \
+ ( ( defined( __GNUC__ ) && \
( ( __GNUC__ >= 5 ) || \
( ( __GNUC__ == 4 ) && ( __GNUC_MINOR__ >= 7 ) ) ) ) || \
( defined( __clang__ ) && \