Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
btwise
openssl
提交
87d3af64
O
openssl
项目概览
btwise
/
openssl
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
openssl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
87d3af64
编写于
12月 08, 2006
作者:
A
Andy Polyakov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Eliminate 64-bit alignment limitation in sparcv9a-mont.
上级
98c1509f
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
27 addition
and
22 deletion
+27
-22
crypto/bn/asm/sparcv9a-mont.pl
crypto/bn/asm/sparcv9a-mont.pl
+27
-22
未找到文件。
crypto/bn/asm/sparcv9a-mont.pl
浏览文件 @
87d3af64
...
...
@@ -37,8 +37,6 @@
# input arguments:
# - num may not be less than 4;
# - num has to be even;
# - ap, bp, rp, np has to be 64-bit aligned [which is not a problem
# as long as BIGNUM.d are malloc-ated];
# Failure to meet either condition has no fatal effects, simply
# doesn't give any performance gain.
...
...
@@ -183,12 +181,12 @@ $fname:
add $ap,$j,%o3
add $bp,$i,%o4
ld
x [$bp+$i],%o0
! bp[0]
ld
x [$ap+$j],%o1 ! ap[0]
sllx %o0,32,%g1
sllx %
o1,32,%g5
srlx %o0,32,%o0
s
rlx %o1,32,%o1
ld
[%o3+4],%g1
! bp[0]
ld
[%o3+0],%o0
ld [%o4+4],%g5 ! ap[0]
sllx %
g1,32,%g1
ld [%o4+0],%o1
s
llx %g5,32,%g5
or %g1,%o0,%o0
or %g5,%o1,%o1
...
...
@@ -510,14 +508,15 @@ $fname:
sub %g0,$num,$j ! j=-num
add %sp,$bias+$frame+$locals,$tp
add $ap,$j,%o3
add $bp,$i,%o4
ld
x [$bp+$i],%o0
! bp[i]
ld
x [$ap+$j],%o1 ! ap[0]
sllx %o0,32,%g1
sllx %
o1,32,%g5
srlx %o0,32,%o0
s
rlx %o1,32,%o1
ld
[%o3+4],%g1
! bp[i]
ld
[%o3+0],%o0
ld [%o4+4],%g5 ! ap[0]
sllx %
g1,32,%g1
ld [%o4+0],%o1
s
llx %g5,32,%g5
or %g1,%o0,%o0
or %g5,%o1,%o1
...
...
@@ -818,14 +817,18 @@ $fname:
.align 32,0x1000000
.Lsub:
ldd [$tp+%o7],%o0
ldd [$np+%o7],%o2
subccc %o1,%o2,%o2
subccc %o0,%o3,%o3
std %o2,[$rp+%o7]
ldx [$tp+%o7],%o0
add $np,%o7,%g1
ld [%g1+0],%o2
ld [%g1+4],%o3
srlx %o0,32,%o1
subccc %o0,%o2,%o2
add $rp,%o7,%g1
subccc %o1,%o3,%o3
st %o2,[%g1+0]
add %o7,8,%o7
brnz,pt %o7,.Lsub
nop
st %o3,[%g1+4]
subccc $carry,0,$carry
bcc,pt %icc,.Lzap
sub %g0,$num,%o7 ! n=-num
...
...
@@ -834,10 +837,11 @@ $fname:
.Lcopy:
ldx [$tp+%o7],%o0
srlx %o0,32,%o1
std %o0,[$rp+%o7]
add $rp,%o7,%g1
st %o0,[%g1+0]
add %o7,8,%o7
brnz,pt %o7,.Lcopy
nop
st %o1,[%g1+4]
ba .Lzap
sub %g0,$num,%o7 ! n=-num
...
...
@@ -861,6 +865,7 @@ $fname:
restore
.type $fname,#function
.size $fname,(.-$fname)
.asciz "Montgomery Multipltication for UltraSPARC, CRYPTOGAMS by <appro\@openssl.org>"
___
$code
=~
s/\`([^\`]*)\`/eval($1)/g
em
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录