Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Openssl
提交
988d11b6
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看板
提交
988d11b6
编写于
5月 25, 2013
作者:
A
Andy Polyakov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
vpaes-x86[_64].pl: minor Atom-specific optimization.
上级
8a97a330
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
44 addition
and
44 deletion
+44
-44
crypto/aes/asm/vpaes-x86.pl
crypto/aes/asm/vpaes-x86.pl
+23
-23
crypto/aes/asm/vpaes-x86_64.pl
crypto/aes/asm/vpaes-x86_64.pl
+21
-21
未找到文件。
crypto/aes/asm/vpaes-x86.pl
浏览文件 @
988d11b6
...
...
@@ -29,7 +29,7 @@
#
# Core 2(**) 28.1/41.4/18.3 21.9/25.2(***)
# Nehalem 27.9/40.4/18.1 10.2/11.9
# Atom 70.7/92.1/60.1 61.1/
81.0
(***)
# Atom 70.7/92.1/60.1 61.1/
75.4
(***)
#
# (*) "Hyper-threading" in the context refers rather to cache shared
# among multiple cores, than to specifically Intel HTT. As vast
...
...
@@ -295,43 +295,43 @@ $k_dsbo=0x2c0; # decryption sbox final output
&movdqa
("
xmm1
",
&QWP
(
-
0x10
,
$base
));
# 0 : sb9t
&pshufb
("
xmm4
","
xmm2
");
# 4 = sb9u
&pshufb
("
xmm1
","
xmm3
");
# 0 = sb9t
&pxor
("
xmm4
","
xmm0
");
&add
(
$key
,
16
);
# next round key
&pxor
("
xmm1
","
xmm4
");
# 0 = ch
&pxor
("
xmm0
","
xmm4
");
&movdqa
("
xmm4
",
&QWP
(
0
,
$base
));
# 4 : sbdu
&pshufb
("
xmm1
","
xmm5
");
# MC ch
&pshufb
("
xmm4
","
xmm2
");
# 4 = sbdu
&movdqa
("
xmm0
",
&QWP
(
0x10
,
$base
));
# 0 : sbdt
&pxor
("
xmm4
","
xmm1
");
# 4 = ch
&pshufb
("
xmm0
","
xmm3
");
# 0 = sbdt
&sub
(
$round
,
1
);
# nr--
&pxor
("
xmm0
","
xmm4
");
# 0 = ch
&pxor
("
xmm0
","
xmm1
");
# 0 = ch
&movdqa
("
xmm1
",
&QWP
(
0x10
,
$base
));
# 0 : sbdt
&
movdqa
("
xmm4
",
&QWP
(
0x20
,
$base
));
# 4 : sbb
u
&
pshufb
("
xmm4
","
xmm2
");
# 4 = sbd
u
&pshufb
("
xmm0
","
xmm5
");
# MC ch
&pshufb
("
xmm1
","
xmm3
");
# 0 = sbdt
&pxor
("
xmm0
","
xmm4
");
# 4 = ch
&movdqa
("
xmm4
",
&QWP
(
0x20
,
$base
));
# 4 : sbbu
&pxor
("
xmm0
","
xmm1
");
# 0 = ch
&movdqa
("
xmm1
",
&QWP
(
0x30
,
$base
));
# 0 : sbbt
&pshufb
("
xmm4
","
xmm2
");
# 4 = sbbu
&pshufb
("
xmm0
","
xmm5
");
# MC ch
&pshufb
("
xmm1
","
xmm3
");
# 0 = sbbt
&pxor
("
xmm4
","
xmm0
");
# 4 = ch
&pxor
("
xmm1
","
xmm4
");
# 0 = ch
&pxor
("
xmm0
","
xmm4
");
# 4 = ch
&movdqa
("
xmm4
",
&QWP
(
0x40
,
$base
));
# 4 : sbeu
&pshufb
("
xmm1
","
xmm5
");
# MC ch
&movdqa
("
xmm0
",
&QWP
(
0x50
,
$base
));
# 0 : sbet
&pxor
("
xmm0
","
xmm1
");
# 0 = ch
&movdqa
("
xmm1
",
&QWP
(
0x50
,
$base
));
# 0 : sbet
&pshufb
("
xmm4
","
xmm2
");
# 4 = sbeu
&pshufb
("
xmm0
","
xmm3
");
# 0 = sbet
&pshufb
("
xmm0
","
xmm5
");
# MC ch
&pshufb
("
xmm1
","
xmm3
");
# 0 = sbet
&pxor
("
xmm0
","
xmm4
");
# 4 = ch
&add
(
$key
,
16
);
# next round key
&palignr
("
xmm5
","
xmm5
",
12
);
&pxor
("
xmm
4
","
xmm1
");
# 4
= ch
&
pxor
("
xmm0
","
xmm4
");
# 0 = ch
&pxor
("
xmm
0
","
xmm1
");
# 0
= ch
&
sub
(
$round
,
1
);
# nr--
&set_label
("
dec_entry
");
# top of round
&movdqa
("
xmm1
","
xmm6
");
# 1 : i
&pandn
("
xmm1
","
xmm0
");
# 1 = i<<4
&movdqa
("
xmm2
",
&QWP
(
$k_inv
+
16
,
$const
));
# 2 : a/k
&p
srld
("
xmm1
",
4
);
# 1 = i
&p
andn
("
xmm1
","
xmm0
");
# 1 = i<<4
&pand
("
xmm0
","
xmm6
");
# 0 = k
&psrld
("
xmm1
",
4
);
# 1 = i
&pshufb
("
xmm2
","
xmm0
");
# 2 = a/k
&movdqa
("
xmm3
","
xmm7
");
# 3 : 1/i
&pxor
("
xmm0
","
xmm1
");
# 0 = j
...
...
crypto/aes/asm/vpaes-x86_64.pl
浏览文件 @
988d11b6
...
...
@@ -29,7 +29,7 @@
#
# Core 2(**) 29.6/41.1/14.3 21.9/25.2(***)
# Nehalem 29.6/40.3/14.6 10.0/11.8
# Atom 57.3/74.2/32.1 60.9/
82.3
(***)
# Atom 57.3/74.2/32.1 60.9/
77.2
(***)
#
# (*) "Hyper-threading" in the context refers rather to cache shared
# among multiple cores, than to specifically Intel HTT. As vast
...
...
@@ -204,35 +204,35 @@ _vpaes_decrypt_core:
movdqa -0x10(%r10),%xmm1 # 0 : sb9t
pshufb %xmm2, %xmm4 # 4 = sb9u
pshufb %xmm3, %xmm1 # 0 = sb9t
pxor %xmm0, %xmm4
add \$16, %r9 # next round key
pxor %xmm4, %xmm1 # 0 = ch
pxor %xmm4, %xmm0
movdqa 0x00(%r10),%xmm4 # 4 : sbdu
pshufb %xmm5, %xmm1 # MC ch
pshufb %xmm2, %xmm4 # 4 = sbdu
movdqa 0x10(%r10),%xmm0 # 0 : sbdt
pxor %xmm1, %xmm4 # 4 = ch
pshufb %xmm3, %xmm0 # 0 = sbdt
sub \$1,%rax # nr--
pxor %xmm4, %xmm0 # 0 = ch
pxor %xmm1, %xmm0 # 0 = ch
movdqa 0x10(%r10),%xmm1 # 0 : sbdt
movdqa 0x20(%r10),%xmm4 # 4 : sbb
u
pshufb %xmm2, %xmm4 # 4 = sbd
u
pshufb %xmm5, %xmm0 # MC ch
pshufb %xmm3, %xmm1 # 0 = sbdt
pxor %xmm4, %xmm0 # 4 = ch
movdqa 0x20(%r10),%xmm4 # 4 : sbbu
pxor %xmm1, %xmm0 # 0 = ch
movdqa 0x30(%r10),%xmm1 # 0 : sbbt
pshufb %xmm2, %xmm4 # 4 = sbbu
pshufb %xmm5, %xmm0 # MC ch
pshufb %xmm3, %xmm1 # 0 = sbbt
pxor %xmm0, %xmm4 # 4 = ch
pxor %xmm4, %xmm1 # 0 = ch
pxor %xmm4, %xmm0 # 4 = ch
movdqa 0x40(%r10),%xmm4 # 4 : sbeu
pshufb %xmm5, %xmm1 # MC ch
movdqa 0x50(%r10),%xmm0 # 0 : sbet
pxor %xmm1, %xmm0 # 0 = ch
movdqa 0x50(%r10),%xmm1 # 0 : sbet
pshufb %xmm2, %xmm4 # 4 = sbeu
pshufb %xmm3, %xmm0 # 0 = sbet
pshufb %xmm5, %xmm0 # MC ch
pshufb %xmm3, %xmm1 # 0 = sbet
pxor %xmm4, %xmm0 # 4 = ch
add \$16, %r9 # next round key
palignr \$12, %xmm5, %xmm5
pxor %xmm1, %xmm
4 # 4
= ch
pxor %xmm4, %xmm0 # 0 = ch
pxor %xmm1, %xmm
0 # 0
= ch
sub \$1,%rax # nr--
.Ldec_entry:
# top of round
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录