OLD | NEW |
1 | 1 |
2 /* pngpriv.h - private declarations for use inside libpng | 2 /* pngpriv.h - private declarations for use inside libpng |
3 * | 3 * |
4 * For conditions of distribution and use, see copyright notice in png.h | 4 * For conditions of distribution and use, see copyright notice in png.h |
5 * Copyright (c) 1998-2013 Glenn Randers-Pehrson | 5 * Copyright (c) 1998-2013 Glenn Randers-Pehrson |
6 * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) | 6 * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) |
7 * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) | 7 * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) |
8 * | 8 * |
9 * Last changed in libpng 1.6.3 [July 18, 2013] | 9 * Last changed in libpng 1.6.3 [July 18, 2013] |
10 * | 10 * |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
100 * | 100 * |
101 * NOTE: symbol prefixing does not pass $(CFLAGS) to the preprocessor, because | 101 * NOTE: symbol prefixing does not pass $(CFLAGS) to the preprocessor, because |
102 * this is not possible with certain compilers (Oracle SUN OS CC), as a result | 102 * this is not possible with certain compilers (Oracle SUN OS CC), as a result |
103 * it is necessary to ensure that all extern functions that *might* be used | 103 * it is necessary to ensure that all extern functions that *might* be used |
104 * regardless of $(CFLAGS) get declared in this file. The test on __ARM_NEON__ | 104 * regardless of $(CFLAGS) get declared in this file. The test on __ARM_NEON__ |
105 * below is one example of this behavior because it is controlled by the | 105 * below is one example of this behavior because it is controlled by the |
106 * presence or not of -mfpu=neon on the GCC command line, it is possible to do | 106 * presence or not of -mfpu=neon on the GCC command line, it is possible to do |
107 * this in $(CC), e.g. "CC=gcc -mfpu=neon", but people who build libpng rarely | 107 * this in $(CC), e.g. "CC=gcc -mfpu=neon", but people who build libpng rarely |
108 * do this. | 108 * do this. |
109 */ | 109 */ |
| 110 /* |
| 111 * pdfium: This version of libpng does not contain the arm neon optimized code |
| 112 * so we should never try to reference it. |
| 113 */ |
| 114 #if 0 |
110 #ifndef PNG_ARM_NEON_OPT | 115 #ifndef PNG_ARM_NEON_OPT |
111 /* ARM NEON optimizations are being controlled by the compiler settings, | 116 /* ARM NEON optimizations are being controlled by the compiler settings, |
112 * typically the target FPU. If the FPU has been set to NEON (-mfpu=neon | 117 * typically the target FPU. If the FPU has been set to NEON (-mfpu=neon |
113 * with GCC) then the compiler will define __ARM_NEON__ and we can rely | 118 * with GCC) then the compiler will define __ARM_NEON__ and we can rely |
114 * unconditionally on NEON instructions not crashing, otherwise we must | 119 * unconditionally on NEON instructions not crashing, otherwise we must |
115 * disable use of NEON instructions: | 120 * disable use of NEON instructions: |
116 */ | 121 */ |
117 # ifdef __ARM_NEON__ | 122 # ifdef __ARM_NEON__ |
118 # define PNG_ARM_NEON_OPT 2 | 123 # define PNG_ARM_NEON_OPT 2 |
119 # else | 124 # else |
120 # define PNG_ARM_NEON_OPT 0 | 125 # define PNG_ARM_NEON_OPT 0 |
121 # endif | 126 # endif |
122 #endif | 127 #endif |
123 | 128 |
124 #if PNG_ARM_NEON_OPT > 0 | 129 #if PNG_ARM_NEON_OPT > 0 |
125 /* NEON optimizations are to be at least considered by libpng, so enable the | 130 /* NEON optimizations are to be at least considered by libpng, so enable the |
126 * callbacks to do this. | 131 * callbacks to do this. |
127 */ | 132 */ |
128 # define PNG_FILTER_OPTIMIZATIONS png_init_filter_functions_neon | 133 # define PNG_FILTER_OPTIMIZATIONS png_init_filter_functions_neon |
129 #endif | 134 #endif |
| 135 #endif |
130 | 136 |
131 /* Is this a build of a DLL where compilation of the object modules requires | 137 /* Is this a build of a DLL where compilation of the object modules requires |
132 * different preprocessor settings to those required for a simple library? If | 138 * different preprocessor settings to those required for a simple library? If |
133 * so PNG_BUILD_DLL must be set. | 139 * so PNG_BUILD_DLL must be set. |
134 * | 140 * |
135 * If libpng is used inside a DLL but that DLL does not export the libpng APIs | 141 * If libpng is used inside a DLL but that DLL does not export the libpng APIs |
136 * PNG_BUILD_DLL must not be set. To avoid the code below kicking in build a | 142 * PNG_BUILD_DLL must not be set. To avoid the code below kicking in build a |
137 * static library of libpng then link the DLL against that. | 143 * static library of libpng then link the DLL against that. |
138 */ | 144 */ |
139 #ifndef PNG_BUILD_DLL | 145 #ifndef PNG_BUILD_DLL |
(...skipping 1857 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1997 /* Maintainer: Put new private prototypes here ^ */ | 2003 /* Maintainer: Put new private prototypes here ^ */ |
1998 | 2004 |
1999 #include "pngdebug.h" | 2005 #include "pngdebug.h" |
2000 | 2006 |
2001 #ifdef __cplusplus | 2007 #ifdef __cplusplus |
2002 } | 2008 } |
2003 #endif | 2009 #endif |
2004 | 2010 |
2005 #endif /* PNG_VERSION_INFO_ONLY */ | 2011 #endif /* PNG_VERSION_INFO_ONLY */ |
2006 #endif /* PNGPRIV_H */ | 2012 #endif /* PNGPRIV_H */ |
OLD | NEW |