summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlenn Randers-Pehrson <glennrp at users.sourceforge.net>2013-04-23 20:19:26 -0500
committerGlenn Randers-Pehrson <glennrp at users.sourceforge.net>2013-04-23 20:42:23 -0500
commitc912637c3649c1227dc8ba765ee57e52c8c0e4b4 (patch)
treeb445033423691cc7453c0a7a530985ed02dfec1d
parentea0b4c602e4497a68bc88f72b0745005376ba393 (diff)
downloadlibpng-1.7.0beta09.tar.gz
[libpng17] Imported from libpng-1.7.0beta09.tarv1.7.0beta09
-rw-r--r--LICENSE4
-rw-r--r--README2
-rw-r--r--arm_init.c74
-rw-r--r--libpng-manual.txt6
-rw-r--r--libpng.314
-rw-r--r--libpngpf.32
-rw-r--r--png.52
-rw-r--r--pngconf.h2
-rw-r--r--projects/vstudio/readme.txt2
-rw-r--r--projects/vstudio/zlib.props2
-rw-r--r--scripts/README.txt2
-rw-r--r--scripts/pnglibconf.h.prebuilt2
12 files changed, 94 insertions, 20 deletions
diff --git a/LICENSE b/LICENSE
index 63764d41e..b3b897abc 100644
--- a/LICENSE
+++ b/LICENSE
@@ -10,7 +10,7 @@ this sentence.
This code is released under the libpng license.
-libpng versions 1.2.6, August 15, 2004, through 1.7.0beta09, April 18, 2013, are
+libpng versions 1.2.6, August 15, 2004, through 1.7.0beta09, April 24, 2013, are
Copyright (c) 2004, 2006-2013 Glenn Randers-Pehrson, and are
distributed according to the same disclaimer and license as libpng-1.2.5
with the following individual added to the list of Contributing Authors
@@ -108,4 +108,4 @@ certification mark of the Open Source Initiative.
Glenn Randers-Pehrson
glennrp at users.sourceforge.net
-April 18, 2013
+April 24, 2013
diff --git a/README b/README
index b6d5bbac6..795349bff 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-README for libpng version 1.7.0beta09 - April 18, 2013 (shared library 17.0)
+README for libpng version 1.7.0beta09 - April 24, 2013 (shared library 17.0)
See the note about version numbers near the top of png.h
See INSTALL for instructions on how to install libpng.
diff --git a/arm_init.c b/arm_init.c
new file mode 100644
index 000000000..6b0a925f2
--- /dev/null
+++ b/arm_init.c
@@ -0,0 +1,74 @@
+
+/* filter_neon.S - NEON optimised filter functions
+ *
+ * Copyright (c) 2011 Glenn Randers-Pehrson
+ * Written by Mans Rullgard, 2011.
+ *
+ * This code is released under the libpng license.
+ * For conditions of distribution and use, see the disclaimer
+ * and license in png.h
+ */
+#include "../pngpriv.h"
+
+/* __arm__ is defined by GCC, MSVC defines _M_ARM to the ARM version number */
+#if defined __linux__ && defined __arm__
+#include <stdio.h>
+#include <elf.h>
+#include <asm/hwcap.h>
+
+static int png_have_hwcap(unsigned cap)
+{
+ FILE *f = fopen("/proc/self/auxv", "r");
+ Elf32_auxv_t aux;
+ int have_cap = 0;
+
+ if (!f)
+ return 0;
+
+ while (fread(&aux, sizeof(aux), 1, f) > 0)
+ {
+ if (aux.a_type == AT_HWCAP &&
+ aux.a_un.a_val & cap)
+ {
+ have_cap = 1;
+ break;
+ }
+ }
+
+ fclose(f);
+
+ return have_cap;
+}
+#endif /* __linux__ && __arm__ */
+
+void
+png_init_filter_functions_neon(png_structp pp, unsigned int bpp)
+{
+#ifdef __arm__
+#ifdef __linux__
+ if (!png_have_hwcap(HWCAP_NEON))
+ return;
+#endif
+
+ pp->read_filter[PNG_FILTER_VALUE_UP-1] = png_read_filter_row_up_neon;
+
+ if (bpp == 3)
+ {
+ pp->read_filter[PNG_FILTER_VALUE_SUB-1] = png_read_filter_row_sub3_neon;
+ pp->read_filter[PNG_FILTER_VALUE_AVG-1] = png_read_filter_row_avg3_neon;
+ pp->read_filter[PNG_FILTER_VALUE_PAETH-1] =
+ png_read_filter_row_paeth3_neon;
+ }
+
+ else if (bpp == 4)
+ {
+ pp->read_filter[PNG_FILTER_VALUE_SUB-1] = png_read_filter_row_sub4_neon;
+ pp->read_filter[PNG_FILTER_VALUE_AVG-1] = png_read_filter_row_avg4_neon;
+ pp->read_filter[PNG_FILTER_VALUE_PAETH-1] =
+ png_read_filter_row_paeth4_neon;
+ }
+#else
+ PNG_UNUSED(pp)
+ PNG_UNUSED(bpp)
+#endif
+}
diff --git a/libpng-manual.txt b/libpng-manual.txt
index a654c59db..d7d346571 100644
--- a/libpng-manual.txt
+++ b/libpng-manual.txt
@@ -1,6 +1,6 @@
libpng-manual.txt - A description on how to use and modify libpng
- libpng version 1.7.0beta09 - April 18, 2013
+ libpng version 1.7.0beta09 - April 24, 2013
Updated and distributed by Glenn Randers-Pehrson
<glennrp at users.sourceforge.net>
Copyright (c) 1998-2013 Glenn Randers-Pehrson
@@ -11,7 +11,7 @@ libpng-manual.txt - A description on how to use and modify libpng
Based on:
- libpng versions 0.97, January 1998, through 1.7.0beta09 - April 18, 2013
+ libpng versions 0.97, January 1998, through 1.7.0beta09 - April 24, 2013
Updated and distributed by Glenn Randers-Pehrson
Copyright (c) 1998-2013 Glenn Randers-Pehrson
@@ -5196,7 +5196,7 @@ Other rules can be inferred by inspecting the libpng source.
XVII. Y2K Compliance in libpng
-April 18, 2013
+April 24, 2013
Since the PNG Development group is an ad-hoc body, we can't make
an official declaration.
diff --git a/libpng.3 b/libpng.3
index e0bf08f56..4e0a1e51c 100644
--- a/libpng.3
+++ b/libpng.3
@@ -1,4 +1,4 @@
-.TH LIBPNG 3 "April 18, 2013"
+.TH LIBPNG 3 "April 24, 2013"
.SH NAME
libpng \- Portable Network Graphics (PNG) Reference Library 1.7.0beta09
.SH SYNOPSIS
@@ -494,7 +494,7 @@ Following is a copy of the libpng-manual.txt file that accompanies libpng.
.SH LIBPNG.TXT
libpng-manual.txt - A description on how to use and modify libpng
- libpng version 1.7.0beta09 - April 18, 2013
+ libpng version 1.7.0beta09 - April 24, 2013
Updated and distributed by Glenn Randers-Pehrson
<glennrp at users.sourceforge.net>
Copyright (c) 1998-2013 Glenn Randers-Pehrson
@@ -505,7 +505,7 @@ libpng-manual.txt - A description on how to use and modify libpng
Based on:
- libpng versions 0.97, January 1998, through 1.7.0beta09 - April 18, 2013
+ libpng versions 0.97, January 1998, through 1.7.0beta09 - April 24, 2013
Updated and distributed by Glenn Randers-Pehrson
Copyright (c) 1998-2013 Glenn Randers-Pehrson
@@ -5691,7 +5691,7 @@ Other rules can be inferred by inspecting the libpng source.
.SH XVII. Y2K Compliance in libpng
-April 18, 2013
+April 24, 2013
Since the PNG Development group is an ad-hoc body, we can't make
an official declaration.
@@ -5961,7 +5961,7 @@ possible without all of you.
Thanks to Frank J. T. Wojcik for helping with the documentation.
-Libpng version 1.7.0beta09 - April 18, 2013:
+Libpng version 1.7.0beta09 - April 24, 2013:
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
@@ -5984,7 +5984,7 @@ this sentence.
This code is released under the libpng license.
-libpng versions 1.2.6, August 15, 2004, through 1.7.0beta09, April 18, 2013, are
+libpng versions 1.2.6, August 15, 2004, through 1.7.0beta09, April 24, 2013, are
Copyright (c) 2004,2006-2007 Glenn Randers-Pehrson, and are
distributed according to the same disclaimer and license as libpng-1.2.5
with the following individual added to the list of Contributing Authors
@@ -6083,7 +6083,7 @@ certification mark of the Open Source Initiative.
Glenn Randers-Pehrson
glennrp at users.sourceforge.net
-April 18, 2013
+April 24, 2013
.\" end of man page
diff --git a/libpngpf.3 b/libpngpf.3
index 62ef8d534..44c60b501 100644
--- a/libpngpf.3
+++ b/libpngpf.3
@@ -1,4 +1,4 @@
-.TH LIBPNGPF 3 "April 18, 2013"
+.TH LIBPNGPF 3 "April 24, 2013"
.SH NAME
libpng \- Portable Network Graphics (PNG) Reference Library 1.7.0beta09
(private functions)
diff --git a/png.5 b/png.5
index 719cb94ca..d896d6d6b 100644
--- a/png.5
+++ b/png.5
@@ -1,4 +1,4 @@
-.TH PNG 5 "April 18, 2013"
+.TH PNG 5 "April 24, 2013"
.SH NAME
png \- Portable Network Graphics (PNG) format
.SH DESCRIPTION
diff --git a/pngconf.h b/pngconf.h
index 25f8d6863..cc11548c8 100644
--- a/pngconf.h
+++ b/pngconf.h
@@ -1,7 +1,7 @@
/* pngconf.h - machine configurable file for libpng
*
- * libpng version 1.7.0beta09 - April 18, 2013
+ * libpng version 1.7.0beta09 - April 24, 2013
*
* Copyright (c) 1998-2013 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/projects/vstudio/readme.txt b/projects/vstudio/readme.txt
index 45f5b26b5..57d88c5fa 100644
--- a/projects/vstudio/readme.txt
+++ b/projects/vstudio/readme.txt
@@ -1,7 +1,7 @@
VisualStudio instructions
-libpng version 1.7.0beta09 - April 18, 2013
+libpng version 1.7.0beta09 - April 24, 2013
Copyright (c) 1998-2010 Glenn Randers-Pehrson
diff --git a/projects/vstudio/zlib.props b/projects/vstudio/zlib.props
index 4f5254d32..686ac1f08 100644
--- a/projects/vstudio/zlib.props
+++ b/projects/vstudio/zlib.props
@@ -2,7 +2,7 @@
<!--
* zlib.props - location of zlib source
*
- * libpng version 1.7.0beta09 - April 18, 2013
+ * libpng version 1.7.0beta09 - April 24, 2013
*
* Copyright (c) 1998-2011 Glenn Randers-Pehrson
*
diff --git a/scripts/README.txt b/scripts/README.txt
index e89a87ec0..28706fd8f 100644
--- a/scripts/README.txt
+++ b/scripts/README.txt
@@ -1,5 +1,5 @@
-Makefiles for libpng version 1.7.0beta09 - April 18, 2013
+Makefiles for libpng version 1.7.0beta09 - April 24, 2013
pnglibconf.h.prebuilt => Stores configuration settings
makefile.linux => Linux/ELF makefile
diff --git a/scripts/pnglibconf.h.prebuilt b/scripts/pnglibconf.h.prebuilt
index cf93867d2..d8dd6ada6 100644
--- a/scripts/pnglibconf.h.prebuilt
+++ b/scripts/pnglibconf.h.prebuilt
@@ -2,7 +2,7 @@
/* pnglibconf.h - library build configuration */
-/* Libpng version 1.7.0beta09 - April 18, 2013 */
+/* Libpng version 1.7.0beta09 - April 24, 2013 */
/* Copyright (c) 1998-2013 Glenn Randers-Pehrson */