Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Openssl
提交
4afa9f03
T
Third Party Openssl
项目概览
OpenHarmony
/
Third Party Openssl
大约 1 年 前同步成功
通知
8
Star
18
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Openssl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
4afa9f03
编写于
5月 04, 2014
作者:
A
Andy Polyakov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
crypto/armcap.c: detect ARMv8 capabilities [in 32-bit build].
上级
16ba7074
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
56 addition
and
0 deletion
+56
-0
crypto/arm_arch.h
crypto/arm_arch.h
+4
-0
crypto/armcap.c
crypto/armcap.c
+24
-0
crypto/armv4cpuid.S
crypto/armv4cpuid.S
+28
-0
未找到文件。
crypto/arm_arch.h
浏览文件 @
4afa9f03
...
...
@@ -46,6 +46,10 @@ extern unsigned int OPENSSL_armcap_P;
#define ARMV7_NEON (1<<0)
#define ARMV7_TICK (1<<1)
#define ARMV8_AES (1<<2)
#define ARMV8_SHA1 (1<<3)
#define ARMV8_SHA256 (1<<4)
#define ARMV8_PMULL (1<<5)
#endif
#endif
crypto/armcap.c
浏览文件 @
4afa9f03
...
...
@@ -19,6 +19,10 @@ static void ill_handler (int sig) { siglongjmp(ill_jmp,sig); }
* ARM compilers support inline assembler...
*/
void
_armv7_neon_probe
(
void
);
void
_armv8_aes_probe
(
void
);
void
_armv8_sha1_probe
(
void
);
void
_armv8_sha256_probe
(
void
);
void
_armv8_pmull_probe
(
void
);
unsigned
int
_armv7_tick
(
void
);
unsigned
int
OPENSSL_rdtsc
(
void
)
...
...
@@ -68,6 +72,26 @@ void OPENSSL_cpuid_setup(void)
{
_armv7_neon_probe
();
OPENSSL_armcap_P
|=
ARMV7_NEON
;
if
(
sigsetjmp
(
ill_jmp
,
1
)
==
0
)
{
_armv8_aes_probe
();
OPENSSL_armcap_P
|=
ARMV8_AES
;
}
if
(
sigsetjmp
(
ill_jmp
,
1
)
==
0
)
{
_armv8_sha1_probe
();
OPENSSL_armcap_P
|=
ARMV8_SHA1
;
}
if
(
sigsetjmp
(
ill_jmp
,
1
)
==
0
)
{
_armv8_sha256_probe
();
OPENSSL_armcap_P
|=
ARMV8_SHA256
;
}
if
(
sigsetjmp
(
ill_jmp
,
1
)
==
0
)
{
_armv8_pmull_probe
();
OPENSSL_armcap_P
|=
ARMV8_PMULL
;
}
}
if
(
sigsetjmp
(
ill_jmp
,
1
)
==
0
)
{
...
...
crypto/armv4cpuid.S
浏览文件 @
4afa9f03
...
...
@@ -18,6 +18,34 @@ _armv7_tick:
.
word
0xe12fff1e
@
bx
lr
.
size
_armv7_tick
,.-
_armv7_tick
.
global
_armv8_aes_probe
.
type
_armv8_aes_probe
,%
function
_armv8_aes_probe
:
.
word
0xf3b00300
@
aese
.8
q0
,
q0
.
word
0xe12fff1e
@
bx
lr
.
size
_armv8_aes_probe
,.-
_armv8_aes_probe
.
global
_armv8_sha1_probe
.
type
_armv8_sha1_probe
,%
function
_armv8_sha1_probe
:
.
word
0xf2000c40
@
sha1c
.32
q0
,
q0
,
q0
.
word
0xe12fff1e
@
bx
lr
.
size
_armv8_sha1_probe
,.-
_armv8_sha1_probe
.
global
_armv8_sha256_probe
.
type
_armv8_sha256_probe
,%
function
_armv8_sha256_probe
:
.
word
0xf3000c40
@
sha256h
.32
q0
,
q0
,
q0
.
word
0xe12fff1e
@
bx
lr
.
size
_armv8_sha256_probe
,.-
_armv8_sha256_probe
.
global
_armv8_pmull_probe
.
type
_armv8_pmull_probe
,%
function
_armv8_pmull_probe
:
.
word
0xf2a00e00
@
vmull
.
p64
q0
,
d0
,
d0
.
word
0xe12fff1e
@
bx
lr
.
size
_armv8_pmull_probe
,.-
_armv8_pmull_probe
.
align
5
.
global
OPENSSL_atomic_add
.
type
OPENSSL_atomic_add
,%
function
OPENSSL_atomic_add
:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录