Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Openssl
提交
3df2eff4
T
Third Party Openssl
项目概览
OpenHarmony
/
Third Party Openssl
11 个月 前同步成功
通知
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,发现更多精彩内容 >>
提交
3df2eff4
编写于
7月 21, 2007
作者:
A
Andy Polyakov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
x86*cpuid update.
上级
a415ebd0
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
12 addition
and
9 deletion
+12
-9
crypto/x86_64cpuid.pl
crypto/x86_64cpuid.pl
+2
-2
crypto/x86cpuid.pl
crypto/x86cpuid.pl
+10
-7
未找到文件。
crypto/x86_64cpuid.pl
浏览文件 @
3df2eff4
...
...
@@ -134,8 +134,6 @@ OPENSSL_ia32_cpuid:
mov \$1,%eax
cpuid
bt \$28,%edx # test hyper-threading bit
jnc .Ldone
cmp \$0,%r9d
jne .Lnotintel
or \$1<<20,%edx # use reserved bit to engage RC4_CHAR
...
...
@@ -144,6 +142,8 @@ OPENSSL_ia32_cpuid:
je .Lnotintel
or \$1<<30,%edx # use reserved bit to skip unrolled loop
.Lnotintel:
bt \$28,%edx # test hyper-threading bit
jnc .Ldone
shr \$16,%ebx
cmp \$1,%bl # see if cache is shared
ja .Ldone
...
...
crypto/x86cpuid.pl
浏览文件 @
3df2eff4
...
...
@@ -19,7 +19,7 @@ for (@ARGV) { $sse2=1 if (/-DOPENSSL_IA32_SSE2/); }
&pop
("
eax
");
&xor
("
ecx
","
eax
");
&bt
("
ecx
",
21
);
&jnc
(
&label
("
nocpuid
"));
&jnc
(
&label
("
done
"));
&xor
("
eax
","
eax
");
&cpuid
();
&xor
("
eax
","
eax
");
...
...
@@ -34,17 +34,20 @@ for (@ARGV) { $sse2=1 if (/-DOPENSSL_IA32_SSE2/); }
&or
("
ebp
","
eax
");
&mov
("
eax
",
1
);
&cpuid
();
&bt
("
edx
",
28
);
# test hyper-threading bit
&jnc
(
&label
("
nocpuid
"));
&cmp
("
ebp
",
0
);
&jne
(
&label
("
notintel
"));
&jne
(
&label
("
notP4
"));
&and
(
&HB
("
eax
"),
15
);
# familiy ID
&cmp
(
&HB
("
eax
"),
15
);
# P4?
&jne
(
&label
("
notP4
"));
&or
("
edx
",
1
<<
20
);
# use reserved bit to engage RC4_CHAR
&set_label
("
notintel
");
&set_label
("
notP4
");
&bt
("
edx
",
28
);
# test hyper-threading bit
&jnc
(
&label
("
done
"));
&shr
("
ebx
",
16
);
&cmp
(
&LB
("
ebx
"),
1
);
# see if cache is shared(*)
&ja
(
&label
("
nocpuid
"));
&ja
(
&label
("
done
"));
&and
("
edx
",
0xefffffff
);
# clear hyper-threading bit if not
&set_label
("
nocpuid
");
&set_label
("
done
");
&mov
("
eax
","
edx
");
&mov
("
edx
","
ecx
");
&function_end
("
OPENSSL_ia32_cpuid
");
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录