7 .type bn_mul_add_word,@function
22 movl 20(%esp),%edi # r => edi
23 movl 24(%esp),%ebx # a => exb
24 movl 32(%esp),%ecx # w => ecx
25 movl 28(%esp),%ebp # num => ebp
33 movl %ecx,%eax # w => eax
35 addl (%edi),%eax # *r+=L(t)
36 adcl $0,%edx # H(t)+= carry
37 addl %esi,%eax # L(t)+=c
38 adcl $0,%edx # H(t)+=carry
39 movl %eax,(%edi) # *r+=L(t)
40 movl %edx,%esi # c=H(t)
43 movl %ecx,%eax # w => eax
45 addl 4(%edi),%eax # *r+=L(t)
46 adcl $0,%edx # H(t)+= carry
47 addl %esi,%eax # L(t)+=c
48 adcl $0,%edx # H(t)+=carry
49 movl %eax,4(%edi) # *r+=L(t)
50 movl %edx,%esi # c=H(t)
53 movl %ecx,%eax # w => eax
55 addl 8(%edi),%eax # *r+=L(t)
56 adcl $0,%edx # H(t)+=carry
57 addl %esi,%eax # L(t)+=c
58 adcl $0,%edx # H(t)+=carry
59 movl %eax,8(%edi) # *r+=L(t)
60 movl %edx,%esi # c=H(t)
63 movl %ecx,%eax # w => eax
64 mull 12(%ebx) # w * *a
65 addl 12(%edi),%eax # *r+=L(t)
66 adcl $0,%edx # H(t)+=carry
67 addl %esi,%eax # L(t)+=c
68 adcl $0,%edx # H(t)+=carry
69 movl %eax,12(%edi) # *r+=L(t)
70 movl %edx,%esi # c=H(t)
72 addl $16,%ebx # a+=4 (4 words)
73 addl $16,%edi # r+=4 (4 words)
80 movl 28(%esp),%ebp # num => ebp
85 movl %ecx,%eax # w => eax
87 addl (%edi),%eax # *r+=L(t)
88 adcl $0,%edx # H(t)+=carry
89 addl %esi,%eax # L(t)+=c
90 adcl $0,%edx # H(t)+=carry
91 movl %eax,(%edi) # *r+=L(t)
92 movl %edx,%esi # c=H(t)
97 movl %ecx,%eax # w => eax
99 addl 4(%edi),%eax # *r+=L(t)
100 adcl $0,%edx # H(t)+=carry
101 addl %esi,%eax # L(t)+=c
102 adcl $0,%edx # H(t)+=carry
103 movl %eax,4(%edi) # *r+=L(t)
104 movl %edx,%esi # c=H(t)
109 movl %ecx,%eax # w => eax
110 mull 8(%ebx) # w * *a
111 addl 8(%edi),%eax # *r+=L(t)
112 adcl $0,%edx # H(t)+=carry
113 addl %esi,%eax # L(t)+=c
114 adcl $0,%edx # H(t)+=carry
115 movl %eax,8(%edi) # *r+=L(t)
116 movl %edx,%esi # c=H(t)
120 movl %esi,%eax # return(c)
127 .size bn_mul_add_word,.Lfe1-bn_mul_add_word
130 .type bn_mul_word,@function
145 movl 20(%esp),%edi # r => edi
146 movl 24(%esp),%ebx # a => exb
147 movl 28(%esp),%ebp # num => bp
148 movl 32(%esp),%ecx # w => ecx
152 movl %ecx,%eax # w => eax
154 addl %esi,%eax # L(t)+=c
155 adcl $0,%edx # H(t)+=carry
156 movl %eax,(%edi) # *r=L(t)
157 movl %edx,%esi # c=H(t)
161 movl %ecx,%eax # w => eax
162 mull 4(%ebx) # w * *a
163 addl %esi,%eax # L(t)+=c
164 adcl $0,%edx # H(t)+=carry
165 movl %eax,4(%edi) # *r=L(t)
166 movl %edx,%esi # c=H(t)
170 movl %ecx,%eax # w => eax
171 mull 8(%ebx) # w * *a
172 addl %esi,%eax # L(t)+=c
173 adcl $0,%edx # H(t)+=carry
174 movl %eax,8(%edi) # *r=L(t)
175 movl %edx,%esi # c=H(t)
179 movl %ecx,%eax # w => eax
180 mull 12(%ebx) # w * *a
181 addl %esi,%eax # L(t)+=c
182 adcl $0,%edx # H(t)+=carry
183 movl %eax,12(%edi) # *r=L(t)
184 movl %edx,%esi # c=H(t)
188 addl $16,%ebx # a+=4 (4 words)
189 addl $16,%edi # r+=4 (4 words)
194 movl %esi,%eax # return(c)
201 .size bn_mul_word,.Lfe2-bn_mul_word
205 .type bn_sqr_words,@function
210 movl 16(%esp),%esi # r
211 movl 20(%esp),%edi # a
212 movl 24(%esp),%ebx # n
217 movl (%edi),%eax # get a
219 movl %eax,(%esi) # put low into return addr
220 movl %edx,4(%esi) # put high into return addr
222 movl 4(%edi),%eax # get a
224 movl %eax,8(%esi) # put low into return addr
225 movl %edx,12(%esi) # put high into return addr
227 movl 8(%edi),%eax # get a
229 movl %eax,16(%esi) # put low into return addr
230 movl %edx,20(%esi) # put high into return addr
232 movl 12(%edi),%eax # get a
234 movl %eax,24(%esi) # put low into return addr
235 movl %edx,28(%esi) # put high into return addr
244 movl 24(%esp),%ebx # n
247 movl (%edi),%eax # get a
249 movl %eax,(%esi) # put low into return addr
250 movl %edx,4(%esi) # put high into return addr
253 movl 4(%edi),%eax # get a
255 movl %eax,8(%esi) # put low into return addr
256 movl %edx,12(%esi) # put high into return addr
259 movl 8(%edi),%eax # get a
261 movl %eax,16(%esi) # put low into return addr
262 movl %edx,20(%esi) # put high into return addr
270 .size bn_sqr_words,.Lfe3-bn_sqr_words
274 .type bn_div64,@function
276 movl 4(%esp),%edx # a
277 movl 8(%esp),%eax # b
281 .size bn_div64,.Lfe4-bn_div64
282 .ident "GCC: (GNU) 2.6.3"