Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Libpng
提交
db9d9684
T
Third Party Libpng
项目概览
OpenHarmony
/
Third Party Libpng
大约 1 年 前同步成功
通知
4
Star
22
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Libpng
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
db9d9684
编写于
10月 18, 2013
作者:
J
John Bowler
提交者:
Glenn Randers-Pehrson
10月 18, 2013
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[libpng16] Cleaned up ARM NEON compilation handling. The tests are now in
pngpriv.h and detect the broken GCC compilers.
上级
9e9977e1
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
37 addition
and
8 deletion
+37
-8
ANNOUNCE
ANNOUNCE
+4
-2
CHANGES
CHANGES
+3
-1
arm/filter_neon.S
arm/filter_neon.S
+4
-3
arm/filter_neon_intrinsics.c
arm/filter_neon_intrinsics.c
+2
-2
pngpriv.h
pngpriv.h
+24
-0
未找到文件。
ANNOUNCE
浏览文件 @
db9d9684
Libpng 1.6.7beta03 - October 1
7
, 2013
Libpng 1.6.7beta03 - October 1
8
, 2013
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.
...
...
@@ -72,12 +72,14 @@ Version 1.6.7beta02 [October 12, 2013]
Make autogen.sh work with automake 1.13 as well as 1.14. Do this by always
removing the 1.14 'compile' script but never checking for it.
Version 1.6.7beta03 [October 1
7
, 2013]
Version 1.6.7beta03 [October 1
8
, 2013]
Added ARMv8 support (James Yu <james.yu at linaro.org>). Added file
arm/filter_neon_intrinsics.c; enable with configuration flag
PNG_ARM_NEON_INTRINSICS.
Revised pngvalid to generate size images with as many filters as it can
manage, limited by the number of rows.
Cleaned up ARM NEON compilation handling. The tests are now in pngpriv.h
and detect the broken GCC compilers.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
...
...
CHANGES
浏览文件 @
db9d9684
...
...
@@ -4686,12 +4686,14 @@ Version 1.6.7beta02 [October 12, 2013]
Make autogen.sh work with automake 1.13 as well as 1.14. Do this by always
removing the 1.14 'compile' script but never checking for it.
Version 1.6.7beta03 [October 1
7
, 2013]
Version 1.6.7beta03 [October 1
8
, 2013]
Added ARMv8 support (James Yu <james.yu at linaro.org>). Added file
arm/filter_neon_intrinsics.c; enable with configuration flag
PNG_ARM_NEON_INTRINSICS.
Revised pngvalid to generate size images with as many filters as it can
manage, limited by the number of rows.
Cleaned up ARM NEON compilation handling. The tests are now in pngpriv.h
and detect the broken GCC compilers.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
...
...
arm/filter_neon.S
浏览文件 @
db9d9684
...
...
@@ -22,9 +22,10 @@
/*
Assembler
NEON
support
-
only
works
for
32
-
bit
ARM
(
i
.
e
.
it
does
not
work
for
*
ARM64
)
.
The
code
in
arm
/
filter_neon_intrinsics
.
c
supports
ARM64
,
however
it
*
only
works
if
-
mfpu
=
neon
is
specified
on
the
GCC
command
line
.
*
only
works
if
-
mfpu
=
neon
is
specified
on
the
GCC
command
line
.
See
pngpriv
.
h
*
for
the
logic
which
sets
PNG_USE_ARM_NEON_ASM
:
*/
#if
ndef __ARM_NEON__
/* else use arm/filter_neon_intrinsics.c */
#if
def PNG_USE_ARM_NEON_ASM
/* else use arm/filter_neon_intrinsics.c */
#ifdef PNG_READ_SUPPORTED
#if PNG_ARM_NEON_OPT > 0
...
...
@@ -241,4 +242,4 @@ func png_read_filter_row_paeth3_neon, export=1
endfunc
#endif /* PNG_ARM_NEON_OPT > 0 */
#endif /* PNG_READ_SUPPORTED */
#endif /*
!__ARM_NEON__
*/
#endif /*
PNG_USE_ARM_NEON_ASM
*/
arm/filter_neon_intrinsics.c
浏览文件 @
db9d9684
...
...
@@ -15,7 +15,7 @@
#include "pngpriv.h"
/* This code requires -mfpu=neon on the command line: */
#if
def __ARM_NEON__
/* else use arm/filter_neon.S */
#if
ndef PNG_USE_ARM_NEON_ASM
/* else use arm/filter_neon.S */
#include <arm_neon.h>
...
...
@@ -369,4 +369,4 @@ png_read_filter_row_paeth4_neon(png_row_infop row_info, png_bytep row,
#endif
/* PNG_ARM_NEON_OPT > 0 */
#endif
/* PNG_READ_SUPPORTED */
#endif
/*
__ARM_NEON__
*/
#endif
/*
!PNG_USE_ARM_NEON_ASM
*/
pngpriv.h
浏览文件 @
db9d9684
...
...
@@ -128,6 +128,30 @@
# define PNG_FILTER_OPTIMIZATIONS png_init_filter_functions_neon
#endif
#ifndef PNG_USE_ARM_NEON_ASM
/* By default the 'intrinsics' code in arm/filter_neon_intrinsics.c is used
* if possible - if __ARM_NEON__ is set and the compiler version is not known
* to be broken. ASM code can be forced by -DPNG_USE_ARM_NEON_ASM on the
* command line.
*/
# ifndef __ARM_NEON__
/* The 'intrinsics' code simply won't compile without this -mfpu=neon: */
# define PNG_USE_ARM_NEON_ASM
# endif
#endif
/* Put compiler specific checks below: */
#ifndef PNG_USE_ARM_NEON_ASM
# ifdef __GNUC__
/* GCC 4.5.4 NEON support is known to be broken. 4.6.3 is known to work,
* so if this *is* GCC, or G++, look for a version >4.5
*/
# if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6)
# define PNG_USE_ARM_NEON_ASM
# endif
# endif
#endif
/* Is this a build of a DLL where compilation of the object modules requires
* different preprocessor settings to those required for a simple library? If
* so PNG_BUILD_DLL must be set.
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录