Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Openssl
提交
b44a9641
T
Third Party Openssl
项目概览
OpenHarmony
/
Third Party Openssl
大约 1 年 前同步成功
通知
9
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,发现更多精彩内容 >>
提交
b44a9641
编写于
2月 10, 2016
作者:
A
Andy Polyakov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
chacha/asm/chacha-x86.pl: fix nasm compilation.
Reviewed-by:
N
Matt Caswell
<
matt@openssl.org
>
上级
5d1f03f2
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
11 addition
and
11 deletion
+11
-11
crypto/chacha/asm/chacha-x86.pl
crypto/chacha/asm/chacha-x86.pl
+11
-11
未找到文件。
crypto/chacha/asm/chacha-x86.pl
浏览文件 @
b44a9641
...
@@ -346,11 +346,11 @@ if ($xmm) {
...
@@ -346,11 +346,11 @@ if ($xmm) {
&xor
("
eax
","
eax
");
&xor
("
eax
","
eax
");
&xor
("
edx
","
edx
");
&xor
("
edx
","
edx
");
&set_label
("
tail_loop
");
&set_label
("
tail_loop
");
&movb
("
al
",
&
DW
P
(
0
,
$c_
,
$b_
));
&movb
("
al
",
&
B
P
(
0
,
$c_
,
$b_
));
&movb
("
dl
",
&
DW
P
(
0
,"
esp
",
$c_
));
&movb
("
dl
",
&
B
P
(
0
,"
esp
",
$c_
));
&lea
(
$c_
,
&DWP
(
1
,
$c_
));
&lea
(
$c_
,
&DWP
(
1
,
$c_
));
&xor
("
al
","
dl
");
&xor
("
al
","
dl
");
&mov
(
&
DW
P
(
-
1
,
$c
,
$c_
),"
al
");
&mov
(
&
B
P
(
-
1
,
$c
,
$c_
),"
al
");
&dec
(
$b
);
&dec
(
$b
);
&jnz
(
&label
("
tail_loop
"));
&jnz
(
&label
("
tail_loop
"));
...
@@ -456,7 +456,7 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
...
@@ -456,7 +456,7 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
&sub
(
$len
,
64
*
4
);
# bias len
&sub
(
$len
,
64
*
4
);
# bias len
&lea
("
ebp
",
&DWP
(
256
+
128
,"
esp
"));
# size optimization
&lea
("
ebp
",
&DWP
(
256
+
128
,"
esp
"));
# size optimization
&movdqu
("
xmm7
",
&
D
WP
(
0
,"
edx
"));
# key
&movdqu
("
xmm7
",
&
Q
WP
(
0
,"
edx
"));
# key
&pshufd
("
xmm0
","
xmm3
",
0x00
);
&pshufd
("
xmm0
","
xmm3
",
0x00
);
&pshufd
("
xmm1
","
xmm3
",
0x55
);
&pshufd
("
xmm1
","
xmm3
",
0x55
);
&pshufd
("
xmm2
","
xmm3
",
0xaa
);
&pshufd
("
xmm2
","
xmm3
",
0xaa
);
...
@@ -471,12 +471,12 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
...
@@ -471,12 +471,12 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
&movdqa
(
&QWP
(
16
*
13
-
128
,"
ebp
"),"
xmm1
");
&movdqa
(
&QWP
(
16
*
13
-
128
,"
ebp
"),"
xmm1
");
&movdqa
(
&QWP
(
16
*
14
-
128
,"
ebp
"),"
xmm2
");
&movdqa
(
&QWP
(
16
*
14
-
128
,"
ebp
"),"
xmm2
");
&movdqa
(
&QWP
(
16
*
15
-
128
,"
ebp
"),"
xmm3
");
&movdqa
(
&QWP
(
16
*
15
-
128
,"
ebp
"),"
xmm3
");
&movdqu
("
xmm3
",
&
D
WP
(
16
,"
edx
"));
# key
&movdqu
("
xmm3
",
&
Q
WP
(
16
,"
edx
"));
# key
&movdqa
(
&QWP
(
16
*
4
-
128
,"
ebp
"),"
xmm4
");
&movdqa
(
&QWP
(
16
*
4
-
128
,"
ebp
"),"
xmm4
");
&movdqa
(
&QWP
(
16
*
5
-
128
,"
ebp
"),"
xmm5
");
&movdqa
(
&QWP
(
16
*
5
-
128
,"
ebp
"),"
xmm5
");
&movdqa
(
&QWP
(
16
*
6
-
128
,"
ebp
"),"
xmm6
");
&movdqa
(
&QWP
(
16
*
6
-
128
,"
ebp
"),"
xmm6
");
&movdqa
(
&QWP
(
16
*
7
-
128
,"
ebp
"),"
xmm7
");
&movdqa
(
&QWP
(
16
*
7
-
128
,"
ebp
"),"
xmm7
");
&movdqa
("
xmm7
",
&
D
WP
(
16
*
2
,"
eax
"));
# sigma
&movdqa
("
xmm7
",
&
Q
WP
(
16
*
2
,"
eax
"));
# sigma
&lea
("
ebx
",
&DWP
(
128
,"
esp
"));
# size optimization
&lea
("
ebx
",
&DWP
(
128
,"
esp
"));
# size optimization
&pshufd
("
xmm0
","
xmm3
",
0x00
);
&pshufd
("
xmm0
","
xmm3
",
0x00
);
...
@@ -630,7 +630,7 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
...
@@ -630,7 +630,7 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
&pand
("
xmm3
",
&QWP
(
16
*
7
,"
eax
"));
&pand
("
xmm3
",
&QWP
(
16
*
7
,"
eax
"));
&por
("
xmm3
","
xmm2
");
# counter value
&por
("
xmm3
","
xmm2
");
# counter value
{
{
my
(
$a
,
$b
,
$c
,
$d
,
$t
,
$t1
,
$rot16
,
$rot24
)
=
map
("
%
xmm
$_
",(
0
..
7
));
my
(
$a
,
$b
,
$c
,
$d
,
$t
,
$t1
,
$rot16
,
$rot24
)
=
map
("
xmm
$_
",(
0
..
7
));
sub
SSSE3ROUND
{
# critical path is 20 "SIMD ticks" per round
sub
SSSE3ROUND
{
# critical path is 20 "SIMD ticks" per round
&paddd
(
$a
,
$b
);
&paddd
(
$a
,
$b
);
...
@@ -852,7 +852,7 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
...
@@ -852,7 +852,7 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
&sub
(
$len
,
64
*
4
);
# bias len
&sub
(
$len
,
64
*
4
);
# bias len
&lea
("
ebp
",
&DWP
(
256
+
128
,"
esp
"));
# size optimization
&lea
("
ebp
",
&DWP
(
256
+
128
,"
esp
"));
# size optimization
&vmovdqu
("
xmm7
",
&
D
WP
(
0
,"
edx
"));
# key
&vmovdqu
("
xmm7
",
&
Q
WP
(
0
,"
edx
"));
# key
&vpshufd
("
xmm0
","
xmm3
",
0x00
);
&vpshufd
("
xmm0
","
xmm3
",
0x00
);
&vpshufd
("
xmm1
","
xmm3
",
0x55
);
&vpshufd
("
xmm1
","
xmm3
",
0x55
);
&vpshufd
("
xmm2
","
xmm3
",
0xaa
);
&vpshufd
("
xmm2
","
xmm3
",
0xaa
);
...
@@ -867,12 +867,12 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
...
@@ -867,12 +867,12 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
&vmovdqa
(
&QWP
(
16
*
13
-
128
,"
ebp
"),"
xmm1
");
&vmovdqa
(
&QWP
(
16
*
13
-
128
,"
ebp
"),"
xmm1
");
&vmovdqa
(
&QWP
(
16
*
14
-
128
,"
ebp
"),"
xmm2
");
&vmovdqa
(
&QWP
(
16
*
14
-
128
,"
ebp
"),"
xmm2
");
&vmovdqa
(
&QWP
(
16
*
15
-
128
,"
ebp
"),"
xmm3
");
&vmovdqa
(
&QWP
(
16
*
15
-
128
,"
ebp
"),"
xmm3
");
&vmovdqu
("
xmm3
",
&
D
WP
(
16
,"
edx
"));
# key
&vmovdqu
("
xmm3
",
&
Q
WP
(
16
,"
edx
"));
# key
&vmovdqa
(
&QWP
(
16
*
4
-
128
,"
ebp
"),"
xmm4
");
&vmovdqa
(
&QWP
(
16
*
4
-
128
,"
ebp
"),"
xmm4
");
&vmovdqa
(
&QWP
(
16
*
5
-
128
,"
ebp
"),"
xmm5
");
&vmovdqa
(
&QWP
(
16
*
5
-
128
,"
ebp
"),"
xmm5
");
&vmovdqa
(
&QWP
(
16
*
6
-
128
,"
ebp
"),"
xmm6
");
&vmovdqa
(
&QWP
(
16
*
6
-
128
,"
ebp
"),"
xmm6
");
&vmovdqa
(
&QWP
(
16
*
7
-
128
,"
ebp
"),"
xmm7
");
&vmovdqa
(
&QWP
(
16
*
7
-
128
,"
ebp
"),"
xmm7
");
&vmovdqa
("
xmm7
",
&
D
WP
(
16
*
2
,"
eax
"));
# sigma
&vmovdqa
("
xmm7
",
&
Q
WP
(
16
*
2
,"
eax
"));
# sigma
&lea
("
ebx
",
&DWP
(
128
,"
esp
"));
# size optimization
&lea
("
ebx
",
&DWP
(
128
,"
esp
"));
# size optimization
&vpshufd
("
xmm0
","
xmm3
",
0x00
);
&vpshufd
("
xmm0
","
xmm3
",
0x00
);
...
@@ -1015,7 +1015,7 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
...
@@ -1015,7 +1015,7 @@ my ($ap,$bp,$cp,$dp)=map(($_&~3)+(($_-1)&3),($ai,$bi,$ci,$di)); # previous
&vpand
("
xmm3
","
xmm3
",
&QWP
(
16
*
7
,"
eax
"));
&vpand
("
xmm3
","
xmm3
",
&QWP
(
16
*
7
,"
eax
"));
&vpor
("
xmm3
","
xmm3
","
xmm2
");
# counter value
&vpor
("
xmm3
","
xmm3
","
xmm2
");
# counter value
{
{
my
(
$a
,
$b
,
$c
,
$d
,
$t
,
$t1
,
$rot16
,
$rot24
)
=
map
("
%
xmm
$_
",(
0
..
7
));
my
(
$a
,
$b
,
$c
,
$d
,
$t
,
$t1
,
$rot16
,
$rot24
)
=
map
("
xmm
$_
",(
0
..
7
));
sub
XOPROUND
{
sub
XOPROUND
{
&vpaddd
(
$a
,
$a
,
$b
);
&vpaddd
(
$a
,
$a
,
$b
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录