diff options
Diffstat (limited to 'src/lib/libcrypto/bn/asm/alpha/sqr_c4.pl')
-rw-r--r-- | src/lib/libcrypto/bn/asm/alpha/sqr_c4.pl | 109 |
1 files changed, 0 insertions, 109 deletions
diff --git a/src/lib/libcrypto/bn/asm/alpha/sqr_c4.pl b/src/lib/libcrypto/bn/asm/alpha/sqr_c4.pl deleted file mode 100644 index bf33f5b503..0000000000 --- a/src/lib/libcrypto/bn/asm/alpha/sqr_c4.pl +++ /dev/null | |||
@@ -1,109 +0,0 @@ | |||
1 | #!/usr/local/bin/perl | ||
2 | # alpha assember | ||
3 | |||
4 | sub sqr_add_c | ||
5 | { | ||
6 | local($a,$c0,$c1,$c2)=@_; | ||
7 | local($l1,$h1,$t1,$t2); | ||
8 | |||
9 | &mul($a,$a,($l1)=&NR(1)); | ||
10 | &muh($a,$a,($h1)=&NR(1)); | ||
11 | &add($c0,$l1,$c0); | ||
12 | &add($c1,$h1,$c1); | ||
13 | &cmpult($c0,$l1,($t1)=&NR(1)); &FR($l1); | ||
14 | &cmpult($c1,$h1,($t2)=&NR(1)); &FR($h1); | ||
15 | &add($c1,$t1,$c1); &FR($t1); | ||
16 | &add($c2,$t2,$c2); &FR($t2); | ||
17 | } | ||
18 | |||
19 | sub sqr_add_c2 | ||
20 | { | ||
21 | local($a,$b,$c0,$c1,$c2)=@_; | ||
22 | local($l1,$h1,$t1,$t2); | ||
23 | |||
24 | &mul($a,$b,($l1)=&NR(1)); | ||
25 | &muh($a,$b,($h1)=&NR(1)); | ||
26 | &cmplt($l1,"zero",($lc1)=&NR(1)); | ||
27 | &cmplt($h1,"zero",($hc1)=&NR(1)); | ||
28 | &add($l1,$l1,$l1); | ||
29 | &add($h1,$h1,$h1); | ||
30 | &add($h1,$lc1,$h1); &FR($lc1); | ||
31 | &add($c2,$hc1,$c2); &FR($hc1); | ||
32 | |||
33 | &add($c0,$l1,$c0); | ||
34 | &add($c1,$h1,$c1); | ||
35 | &cmpult($c0,$l1,($lc1)=&NR(1)); &FR($l1); | ||
36 | &cmpult($c1,$h1,($hc1)=&NR(1)); &FR($h1); | ||
37 | |||
38 | &add($c1,$lc1,$c1); &FR($lc1); | ||
39 | &add($c2,$hc1,$c2); &FR($hc1); | ||
40 | } | ||
41 | |||
42 | |||
43 | sub bn_sqr_comba4 | ||
44 | { | ||
45 | local($name)=@_; | ||
46 | local(@a,@b,$r,$c0,$c1,$c2); | ||
47 | |||
48 | $cnt=1; | ||
49 | &init_pool(2); | ||
50 | |||
51 | $rp=&wparam(0); | ||
52 | $ap=&wparam(1); | ||
53 | |||
54 | &function_begin($name,""); | ||
55 | |||
56 | &comment(""); | ||
57 | |||
58 | &ld(($a[0])=&NR(1),&QWPw(0,$ap)); | ||
59 | &ld(($a[1])=&NR(1),&QWPw(1,$ap)); | ||
60 | &ld(($a[2])=&NR(1),&QWPw(2,$ap)); | ||
61 | &ld(($a[3])=&NR(1),&QWPw(3,$ap)); &FR($ap); | ||
62 | |||
63 | ($c0,$c1,$c2)=&NR(3); | ||
64 | |||
65 | &mov("zero",$c2); | ||
66 | &mul($a[0],$a[0],$c0); | ||
67 | &muh($a[0],$a[0],$c1); | ||
68 | &st($c0,&QWPw(0,$rp)); | ||
69 | ($c0,$c1,$c2)=($c1,$c2,$c0); | ||
70 | &mov("zero",$c2); | ||
71 | |||
72 | &sqr_add_c2($a[0],$a[1],$c0,$c1,$c2); | ||
73 | &st($c0,&QWPw(1,$rp)); | ||
74 | ($c0,$c1,$c2)=($c1,$c2,$c0); | ||
75 | &mov("zero",$c2); | ||
76 | |||
77 | &sqr_add_c($a[1],$c0,$c1,$c2); | ||
78 | &sqr_add_c2($a[2],$a[0],$c0,$c1,$c2); | ||
79 | &st($c0,&QWPw(2,$rp)); | ||
80 | ($c0,$c1,$c2)=($c1,$c2,$c0); | ||
81 | &mov("zero",$c2); | ||
82 | |||
83 | &sqr_add_c2($a[3],$a[0],$c0,$c1,$c2); | ||
84 | &sqr_add_c2($a[2],$a[1],$c0,$c1,$c2); | ||
85 | &st($c0,&QWPw(3,$rp)); | ||
86 | ($c0,$c1,$c2)=($c1,$c2,$c0); | ||
87 | &mov("zero",$c2); | ||
88 | |||
89 | &sqr_add_c($a[2],$c0,$c1,$c2); | ||
90 | &sqr_add_c2($a[3],$a[1],$c0,$c1,$c2); | ||
91 | &st($c0,&QWPw(4,$rp)); | ||
92 | ($c0,$c1,$c2)=($c1,$c2,$c0); | ||
93 | &mov("zero",$c2); | ||
94 | |||
95 | &sqr_add_c2($a[3],$a[2],$c0,$c1,$c2); | ||
96 | &st($c0,&QWPw(5,$rp)); | ||
97 | ($c0,$c1,$c2)=($c1,$c2,$c0); | ||
98 | &mov("zero",$c2); | ||
99 | |||
100 | &sqr_add_c($a[3],$c0,$c1,$c2); | ||
101 | &st($c0,&QWPw(6,$rp)); | ||
102 | &st($c1,&QWPw(7,$rp)); | ||
103 | |||
104 | &function_end($name); | ||
105 | |||
106 | &fin_pool; | ||
107 | } | ||
108 | |||
109 | 1; | ||