[libpng16] Revised stack marking in arm/filter_neon.S and configure.ac.

This commit is contained in:
Glenn Randers-Pehrson 2013-04-25 09:53:57 -05:00
parent 399430dac2
commit 34d20f482f
5 changed files with 13 additions and 49 deletions

View File

@ -23,43 +23,10 @@ Other information:
1.6.3beta01-README.txt 1.6.3beta01-README.txt
1.6.3beta01-LICENSE.txt 1.6.3beta01-LICENSE.txt
Changes since the last public release (1.6.1): Changes since the last public release (1.6.2):
Version 1.6.2beta01 [April 14, 2013]
Updated documentation of 1.5.x to 1.6.x changes in iCCP chunk handling.
Fixed incorrect warning of excess deflate data. End condition - the
warning would be produced if the end of the deflate stream wasn't read
in the last row. The warning is harmless.
Corrected the test on user transform changes on read. It was in the
png_set of the transform function, but that doesn't matter unless the
transform function changes the rowbuf size, and that is only valid if
transform_info is called.
Corrected a misplaced closing bracket in contrib/libtests/pngvalid.c
(Flavio Medeiros).
Corrected length written to uncompressed iTXt chunks (Samuli Suominen).
Version 1.6.2rc01 [April 18, 2013]
Added contrib/tools/fixitxt.c, to repair the erroneous iTXt chunk length
written by libpng-1.6.0 and 1.6.1.
Levchenko).
Disallow storing sRGB information when the sRGB is not supported.
Version 1.6.2rc02 [April 18, 2013]
Merge pngtest.c with libpng-1.7.0
Version 1.6.2rc03 [April 22, 2013]
Trivial spelling cleanup.
Version 1.6.2rc04 and 1.6.2rc05 [omitted]
Version 1.6.2rc06 [April 24, 2013]
Reverted to version 1.6.2rc03. Recent changes to arm/neon support
have been ported to libpng-1.7.0beta09 and will reappear in version
1.6.3beta01.
Version 1.6.2 [March 25, 2013]
Version 1.6.3beta01 [April 25, 2013] Version 1.6.3beta01 [April 25, 2013]
Revised stack marking in arm/filter_neon.S and configure.ac.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit (subscription required; visit

View File

@ -4504,9 +4504,11 @@ Version 1.6.2rc06 [April 24, 2013]
have been ported to libpng-1.7.0beta09 and will reappear in version have been ported to libpng-1.7.0beta09 and will reappear in version
1.6.3beta01. 1.6.3beta01.
Version 1.6.2 [March 25, 2013] Version 1.6.2 [April 25, 2013]
No changes.
Version 1.6.3beta01 [April 25, 2013] Version 1.6.3beta01 [April 25, 2013]
Revised stack marking in arm/filter_neon.S and configure.ac.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit (subscription required; visit

View File

@ -3,7 +3,7 @@
* *
* Copyright (c) 2013 Glenn Randers-Pehrson * Copyright (c) 2013 Glenn Randers-Pehrson
* Written by Mans Rullgard, 2011. * Written by Mans Rullgard, 2011.
* Last changed in libpng 1.5.15 [March 28, 2013] * Last changed in libpng 1.5.16 [(PENDING RELEASE)]
* *
* This code is released under the libpng license. * This code is released under the libpng license.
* For conditions of distribution and use, see the disclaimer * For conditions of distribution and use, see the disclaimer
@ -216,4 +216,4 @@ png_init_filter_functions_neon(png_structp pp, unsigned int bpp)
png_read_filter_row_paeth4_neon; png_read_filter_row_paeth4_neon;
} }
} }
#endif /* FILTER_OPTIMIZATIONS && __arm__ && __ARM_NEON__ */ #endif /* PNG_ARM_NEON_SUPPORTED */

View File

@ -1,9 +1,9 @@
/* filter_neon.S - NEON optimised filter functions /* filter_neon.S - NEON optimised filter functions
* *
* Copyright (c) 2011 Glenn Randers-Pehrson * Copyright (c) 2013 Glenn Randers-Pehrson
* Written by Mans Rullgard, 2011. * Written by Mans Rullgard, 2011.
* Last changed in libpng 1.5.7 [December 15, 2011] * Last changed in libpng 1.5.16 [(PENDING RELEASE)]
* *
* This code is released under the libpng license. * This code is released under the libpng license.
* For conditions of distribution and use, see the disclaimer * For conditions of distribution and use, see the disclaimer
@ -11,17 +11,17 @@
*/ */
/* This is required to get the symbol renames, which are #defines, and also /* This is required to get the symbol renames, which are #defines, and also
* includes the value of PNG_FILTER_OPTIMIZATIONS. * includes the definition (or not) of PNG_ARM_NEON_SUPPORTED.
*/ */
#define PNG_VERSION_INFO_ONLY #define PNG_VERSION_INFO_ONLY
#include "../pngpriv.h" #include "../pngpriv.h"
#if defined(PNG_FILTER_OPTIMIZATIONS) && defined(__arm__) && \
defined(__ARM_NEON__)
#if defined(__linux__) && defined(__ELF__) #if defined(__linux__) && defined(__ELF__)
.section .note.GNU-stack,"",%progbits /* mark stack as non-executable */ .section .note.GNU-stack,"",%progbits /* mark stack as non-executable */
#endif #endif
#ifdef PNG_ARM_NEON_SUPPORTED
#ifdef __ELF__ #ifdef __ELF__
# define ELF # define ELF
#else #else
@ -232,4 +232,4 @@ func png_read_filter_row_paeth3_neon, export=1
pop {r4,pc} pop {r4,pc}
endfunc endfunc
#endif /* FILTER_OPTIMIZATIONS && __arm__ && __ARM_NEON__ */ #endif /* PNG_ARM_NEON_SUPPORTED */

View File

@ -226,11 +226,6 @@ AC_ARG_WITH(libpng-prefix,
fi]) fi])
AM_CONDITIONAL([DO_PNG_PREFIX], [test "${with_libpng_prefix:-no}" != "no"]) AM_CONDITIONAL([DO_PNG_PREFIX], [test "${with_libpng_prefix:-no}" != "no"])
# Because GCC by default assembles code with an executable stack, even though it
# compiles C code with a non-executable stack, it is necessary to do a fixup
# here (this may by GCC specific)
# AC_SUBST([AM_CCASFLAGS], [-Wa,--noexecstack])
AC_ARG_ENABLE([arm-neon], AC_ARG_ENABLE([arm-neon],
AS_HELP_STRING([[[--enable-arm-neon]]], AS_HELP_STRING([[[--enable-arm-neon]]],
[Enable ARM NEON optimizations: =off, check, api, on:] [Enable ARM NEON optimizations: =off, check, api, on:]