From b757ddb1629d524cd92eb9b39ce298e0dffd57fd Mon Sep 17 00:00:00 2001 From: suzuki toshiya Date: Wed, 13 Sep 2017 22:17:03 +0900 Subject: [PATCH] [sfnt] lowest gcc for vectors ( e1d0249e ) is changed to 4.7. __builtin_shuffle() was introduced in gcc-4.7. The lowest gcc to enable vector operation is delayed from 4.6 to 4.7. * src/sfnt/pngshim.c (premultiply_data): Fix cpp-macro to enable the vector operation, to change the lowest gcc version from 4.6 to 4.7. --- ChangeLog | 11 +++++++++++ src/sfnt/pngshim.c | 5 +++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 62618f814..4708ba577 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2017-09-13 suzuki toshiya + + [sfnt] lowest gcc for vectors ( e1d0249e ) is changed to 4.7. + + __builtin_shuffle() was introduced in gcc-4.7. The lowest + gcc to enable vector operation is delayed from 4.6 to 4.7. + + * src/sfnt/pngshim.c (premultiply_data): Fix cpp-macro to + enable the vector operation, to change the lowest gcc version + from 4.6 to 4.7. + 2017-09-13 suzuki toshiya [cache] Fix a possible overflow by signed integer comparison. diff --git a/src/sfnt/pngshim.c b/src/sfnt/pngshim.c index b05c6de06..7dc343526 100644 --- a/src/sfnt/pngshim.c +++ b/src/sfnt/pngshim.c @@ -59,10 +59,11 @@ /* the `vector_size' attribute was introduced in gcc 3.1, which */ /* predates clang; the `__BYTE_ORDER__' preprocessor symbol was */ - /* introduced in gcc 4.6 and clang 3.2, respectively */ + /* introduced in gcc 4.6 and clang 3.2, respectively. */ + /* __builtin_shuffle() for gcc was introduced in gcc 4.7.0. */ #if ( ( defined( __GNUC__ ) && \ ( ( __GNUC__ >= 5 ) || \ - ( ( __GNUC__ == 4 ) && ( __GNUC_MINOR__ >= 6 ) ) ) ) || \ + ( ( __GNUC__ == 4 ) && ( __GNUC_MINOR__ >= 7 ) ) ) ) || \ ( defined( __clang__ ) && \ ( ( __clang_major__ >= 4 ) || \ ( ( __clang_major__ == 3 ) && ( __clang_minor__ >= 2 ) ) ) ) ) && \