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

This commit is contained in:
Glenn Randers-Pehrson 2013-04-22 19:40:19 -05:00
parent 6e1c74b39b
commit 453fbf942c
4 changed files with 18 additions and 16 deletions

View File

@ -1,5 +1,5 @@
Libpng 1.6.2rc03 - April 22, 2013 Libpng 1.6.2rc04 - April 23, 2013
This is not intended to be a public release. It will be replaced This is not intended to be a public release. It will be replaced
within a few weeks by a public version or by another test version. within a few weeks by a public version or by another test version.
@ -9,19 +9,19 @@ Files available for download:
Source files with LF line endings (for Unix/Linux) and with a Source files with LF line endings (for Unix/Linux) and with a
"configure" script "configure" script
1.6.2rc03.tar.xz (LZMA-compressed, recommended) 1.6.2rc04.tar.xz (LZMA-compressed, recommended)
1.6.2rc03.tar.gz 1.6.2rc04.tar.gz
Source files with CRLF line endings (for Windows), without the Source files with CRLF line endings (for Windows), without the
"configure" script "configure" script
lp162r03.7z (LZMA-compressed, recommended) lp162r04.7z (LZMA-compressed, recommended)
lp162r03.zip lp162r04.zip
Other information: Other information:
1.6.2rc03-README.txt 1.6.2rc04-README.txt
1.6.2rc03-LICENSE.txt 1.6.2rc04-LICENSE.txt
Changes since the last public release (1.6.1): Changes since the last public release (1.6.1):
@ -50,6 +50,9 @@ Version 1.6.2rc02 [April 18, 2013]
Version 1.6.2rc03 [April 22, 2013] Version 1.6.2rc03 [April 22, 2013]
Trivial spelling cleanup. Trivial spelling cleanup.
Version 1.6.2rc04 [April 23, 2013]
Revised stack marking in arm/filter_neon.S
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
https://lists.sourceforge.net/lists/listinfo/png-mng-implement https://lists.sourceforge.net/lists/listinfo/png-mng-implement

View File

@ -4497,6 +4497,9 @@ Version 1.6.2rc02 [April 18, 2013]
Version 1.6.2rc03 [April 22, 2013] Version 1.6.2rc03 [April 22, 2013]
Trivial spelling cleanup. Trivial spelling cleanup.
Version 1.6.2rc04 [April 23, 2013]
Revised stack marking in arm/filter_neon.S
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
https://lists.sourceforge.net/lists/listinfo/png-mng-implement https://lists.sourceforge.net/lists/listinfo/png-mng-implement

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.6.2 [%RDATE%]
* *
* 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
@ -16,12 +16,13 @@
#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
#if defined(PNG_FILTER_OPTIMIZATIONS) && defined(__arm__) && \
defined(__ARM_NEON__)
#ifdef __ELF__ #ifdef __ELF__
# define ELF # define ELF
#else #else

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:]