Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(150)

Side by Side Diff: third_party/boringssl/linux-x86/crypto/rc4/rc4-586.S

Issue 2354623003: Pull boringssl generated source from boringssl_gen (Closed)
Patch Set: . Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 #if defined(__i386__)
2 .file "rc4-586.S"
3 .text
4 .globl asm_RC4
5 .hidden asm_RC4
6 .type asm_RC4,@function
7 .align 16
8 asm_RC4:
9 .L_asm_RC4_begin:
10 pushl %ebp
11 pushl %ebx
12 pushl %esi
13 pushl %edi
14 movl 20(%esp),%edi
15 movl 24(%esp),%edx
16 movl 28(%esp),%esi
17 movl 32(%esp),%ebp
18 xorl %eax,%eax
19 xorl %ebx,%ebx
20 cmpl $0,%edx
21 je .L000abort
22 movb (%edi),%al
23 movb 4(%edi),%bl
24 addl $8,%edi
25 leal (%esi,%edx,1),%ecx
26 subl %esi,%ebp
27 movl %ecx,24(%esp)
28 incb %al
29 cmpl $-1,256(%edi)
30 je .L001RC4_CHAR
31 movl (%edi,%eax,4),%ecx
32 andl $-4,%edx
33 jz .L002loop1
34 movl %ebp,32(%esp)
35 testl $-8,%edx
36 jz .L003go4loop4
37 call .L004PIC_me_up
38 .L004PIC_me_up:
39 popl %ebp
40 leal OPENSSL_ia32cap_P-.L004PIC_me_up(%ebp),%ebp
41 btl $26,(%ebp)
42 jnc .L003go4loop4
43 movl 32(%esp),%ebp
44 andl $-8,%edx
45 leal -8(%esi,%edx,1),%edx
46 movl %edx,-4(%edi)
47 addb %cl,%bl
48 movl (%edi,%ebx,4),%edx
49 movl %ecx,(%edi,%ebx,4)
50 movl %edx,(%edi,%eax,4)
51 incl %eax
52 addl %ecx,%edx
53 movzbl %al,%eax
54 movzbl %dl,%edx
55 movq (%esi),%mm0
56 movl (%edi,%eax,4),%ecx
57 movd (%edi,%edx,4),%mm2
58 jmp .L005loop_mmx_enter
59 .align 16
60 .L006loop_mmx:
61 addb %cl,%bl
62 psllq $56,%mm1
63 movl (%edi,%ebx,4),%edx
64 movl %ecx,(%edi,%ebx,4)
65 movl %edx,(%edi,%eax,4)
66 incl %eax
67 addl %ecx,%edx
68 movzbl %al,%eax
69 movzbl %dl,%edx
70 pxor %mm1,%mm2
71 movq (%esi),%mm0
72 movq %mm2,-8(%ebp,%esi,1)
73 movl (%edi,%eax,4),%ecx
74 movd (%edi,%edx,4),%mm2
75 .L005loop_mmx_enter:
76 addb %cl,%bl
77 movl (%edi,%ebx,4),%edx
78 movl %ecx,(%edi,%ebx,4)
79 movl %edx,(%edi,%eax,4)
80 incl %eax
81 addl %ecx,%edx
82 movzbl %al,%eax
83 movzbl %dl,%edx
84 pxor %mm0,%mm2
85 movl (%edi,%eax,4),%ecx
86 movd (%edi,%edx,4),%mm1
87 addb %cl,%bl
88 psllq $8,%mm1
89 movl (%edi,%ebx,4),%edx
90 movl %ecx,(%edi,%ebx,4)
91 movl %edx,(%edi,%eax,4)
92 incl %eax
93 addl %ecx,%edx
94 movzbl %al,%eax
95 movzbl %dl,%edx
96 pxor %mm1,%mm2
97 movl (%edi,%eax,4),%ecx
98 movd (%edi,%edx,4),%mm1
99 addb %cl,%bl
100 psllq $16,%mm1
101 movl (%edi,%ebx,4),%edx
102 movl %ecx,(%edi,%ebx,4)
103 movl %edx,(%edi,%eax,4)
104 incl %eax
105 addl %ecx,%edx
106 movzbl %al,%eax
107 movzbl %dl,%edx
108 pxor %mm1,%mm2
109 movl (%edi,%eax,4),%ecx
110 movd (%edi,%edx,4),%mm1
111 addb %cl,%bl
112 psllq $24,%mm1
113 movl (%edi,%ebx,4),%edx
114 movl %ecx,(%edi,%ebx,4)
115 movl %edx,(%edi,%eax,4)
116 incl %eax
117 addl %ecx,%edx
118 movzbl %al,%eax
119 movzbl %dl,%edx
120 pxor %mm1,%mm2
121 movl (%edi,%eax,4),%ecx
122 movd (%edi,%edx,4),%mm1
123 addb %cl,%bl
124 psllq $32,%mm1
125 movl (%edi,%ebx,4),%edx
126 movl %ecx,(%edi,%ebx,4)
127 movl %edx,(%edi,%eax,4)
128 incl %eax
129 addl %ecx,%edx
130 movzbl %al,%eax
131 movzbl %dl,%edx
132 pxor %mm1,%mm2
133 movl (%edi,%eax,4),%ecx
134 movd (%edi,%edx,4),%mm1
135 addb %cl,%bl
136 psllq $40,%mm1
137 movl (%edi,%ebx,4),%edx
138 movl %ecx,(%edi,%ebx,4)
139 movl %edx,(%edi,%eax,4)
140 incl %eax
141 addl %ecx,%edx
142 movzbl %al,%eax
143 movzbl %dl,%edx
144 pxor %mm1,%mm2
145 movl (%edi,%eax,4),%ecx
146 movd (%edi,%edx,4),%mm1
147 addb %cl,%bl
148 psllq $48,%mm1
149 movl (%edi,%ebx,4),%edx
150 movl %ecx,(%edi,%ebx,4)
151 movl %edx,(%edi,%eax,4)
152 incl %eax
153 addl %ecx,%edx
154 movzbl %al,%eax
155 movzbl %dl,%edx
156 pxor %mm1,%mm2
157 movl (%edi,%eax,4),%ecx
158 movd (%edi,%edx,4),%mm1
159 movl %ebx,%edx
160 xorl %ebx,%ebx
161 movb %dl,%bl
162 cmpl -4(%edi),%esi
163 leal 8(%esi),%esi
164 jb .L006loop_mmx
165 psllq $56,%mm1
166 pxor %mm1,%mm2
167 movq %mm2,-8(%ebp,%esi,1)
168 emms
169 cmpl 24(%esp),%esi
170 je .L007done
171 jmp .L002loop1
172 .align 16
173 .L003go4loop4:
174 leal -4(%esi,%edx,1),%edx
175 movl %edx,28(%esp)
176 .L008loop4:
177 addb %cl,%bl
178 movl (%edi,%ebx,4),%edx
179 movl %ecx,(%edi,%ebx,4)
180 movl %edx,(%edi,%eax,4)
181 addl %ecx,%edx
182 incb %al
183 andl $255,%edx
184 movl (%edi,%eax,4),%ecx
185 movl (%edi,%edx,4),%ebp
186 addb %cl,%bl
187 movl (%edi,%ebx,4),%edx
188 movl %ecx,(%edi,%ebx,4)
189 movl %edx,(%edi,%eax,4)
190 addl %ecx,%edx
191 incb %al
192 andl $255,%edx
193 rorl $8,%ebp
194 movl (%edi,%eax,4),%ecx
195 orl (%edi,%edx,4),%ebp
196 addb %cl,%bl
197 movl (%edi,%ebx,4),%edx
198 movl %ecx,(%edi,%ebx,4)
199 movl %edx,(%edi,%eax,4)
200 addl %ecx,%edx
201 incb %al
202 andl $255,%edx
203 rorl $8,%ebp
204 movl (%edi,%eax,4),%ecx
205 orl (%edi,%edx,4),%ebp
206 addb %cl,%bl
207 movl (%edi,%ebx,4),%edx
208 movl %ecx,(%edi,%ebx,4)
209 movl %edx,(%edi,%eax,4)
210 addl %ecx,%edx
211 incb %al
212 andl $255,%edx
213 rorl $8,%ebp
214 movl 32(%esp),%ecx
215 orl (%edi,%edx,4),%ebp
216 rorl $8,%ebp
217 xorl (%esi),%ebp
218 cmpl 28(%esp),%esi
219 movl %ebp,(%ecx,%esi,1)
220 leal 4(%esi),%esi
221 movl (%edi,%eax,4),%ecx
222 jb .L008loop4
223 cmpl 24(%esp),%esi
224 je .L007done
225 movl 32(%esp),%ebp
226 .align 16
227 .L002loop1:
228 addb %cl,%bl
229 movl (%edi,%ebx,4),%edx
230 movl %ecx,(%edi,%ebx,4)
231 movl %edx,(%edi,%eax,4)
232 addl %ecx,%edx
233 incb %al
234 andl $255,%edx
235 movl (%edi,%edx,4),%edx
236 xorb (%esi),%dl
237 leal 1(%esi),%esi
238 movl (%edi,%eax,4),%ecx
239 cmpl 24(%esp),%esi
240 movb %dl,-1(%ebp,%esi,1)
241 jb .L002loop1
242 jmp .L007done
243 .align 16
244 .L001RC4_CHAR:
245 movzbl (%edi,%eax,1),%ecx
246 .L009cloop1:
247 addb %cl,%bl
248 movzbl (%edi,%ebx,1),%edx
249 movb %cl,(%edi,%ebx,1)
250 movb %dl,(%edi,%eax,1)
251 addb %cl,%dl
252 movzbl (%edi,%edx,1),%edx
253 addb $1,%al
254 xorb (%esi),%dl
255 leal 1(%esi),%esi
256 movzbl (%edi,%eax,1),%ecx
257 cmpl 24(%esp),%esi
258 movb %dl,-1(%ebp,%esi,1)
259 jb .L009cloop1
260 .L007done:
261 decb %al
262 movl %ebx,-4(%edi)
263 movb %al,-8(%edi)
264 .L000abort:
265 popl %edi
266 popl %esi
267 popl %ebx
268 popl %ebp
269 ret
270 .size asm_RC4,.-.L_asm_RC4_begin
271 .globl asm_RC4_set_key
272 .hidden asm_RC4_set_key
273 .type asm_RC4_set_key,@function
274 .align 16
275 asm_RC4_set_key:
276 .L_asm_RC4_set_key_begin:
277 pushl %ebp
278 pushl %ebx
279 pushl %esi
280 pushl %edi
281 movl 20(%esp),%edi
282 movl 24(%esp),%ebp
283 movl 28(%esp),%esi
284 call .L010PIC_me_up
285 .L010PIC_me_up:
286 popl %edx
287 leal OPENSSL_ia32cap_P-.L010PIC_me_up(%edx),%edx
288 leal 8(%edi),%edi
289 leal (%esi,%ebp,1),%esi
290 negl %ebp
291 xorl %eax,%eax
292 movl %ebp,-4(%edi)
293 btl $20,(%edx)
294 jc .L011c1stloop
295 .align 16
296 .L012w1stloop:
297 movl %eax,(%edi,%eax,4)
298 addb $1,%al
299 jnc .L012w1stloop
300 xorl %ecx,%ecx
301 xorl %edx,%edx
302 .align 16
303 .L013w2ndloop:
304 movl (%edi,%ecx,4),%eax
305 addb (%esi,%ebp,1),%dl
306 addb %al,%dl
307 addl $1,%ebp
308 movl (%edi,%edx,4),%ebx
309 jnz .L014wnowrap
310 movl -4(%edi),%ebp
311 .L014wnowrap:
312 movl %eax,(%edi,%edx,4)
313 movl %ebx,(%edi,%ecx,4)
314 addb $1,%cl
315 jnc .L013w2ndloop
316 jmp .L015exit
317 .align 16
318 .L011c1stloop:
319 movb %al,(%edi,%eax,1)
320 addb $1,%al
321 jnc .L011c1stloop
322 xorl %ecx,%ecx
323 xorl %edx,%edx
324 xorl %ebx,%ebx
325 .align 16
326 .L016c2ndloop:
327 movb (%edi,%ecx,1),%al
328 addb (%esi,%ebp,1),%dl
329 addb %al,%dl
330 addl $1,%ebp
331 movb (%edi,%edx,1),%bl
332 jnz .L017cnowrap
333 movl -4(%edi),%ebp
334 .L017cnowrap:
335 movb %al,(%edi,%edx,1)
336 movb %bl,(%edi,%ecx,1)
337 addb $1,%cl
338 jnc .L016c2ndloop
339 movl $-1,256(%edi)
340 .L015exit:
341 xorl %eax,%eax
342 movl %eax,-8(%edi)
343 movl %eax,-4(%edi)
344 popl %edi
345 popl %esi
346 popl %ebx
347 popl %ebp
348 ret
349 .size asm_RC4_set_key,.-.L_asm_RC4_set_key_begin
350 #endif
OLDNEW
« no previous file with comments | « third_party/boringssl/linux-x86/crypto/modes/ghash-x86.S ('k') | third_party/boringssl/linux-x86/crypto/sha/sha1-586.S » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698