xref: /freebsd/sys/crypto/openssl/i386/x86-gf2m.S (revision ebacd8013fe5f7fdf9f6a5b286f6680dd2891036)
1/* $FreeBSD$ */
2/* Do not modify. This file is auto-generated from x86-gf2m.pl. */
3#ifdef PIC
4.text
5.type	_mul_1x1_mmx,@function
6.align	16
7_mul_1x1_mmx:
8	subl	$36,%esp
9	movl	%eax,%ecx
10	leal	(%eax,%eax,1),%edx
11	andl	$1073741823,%ecx
12	leal	(%edx,%edx,1),%ebp
13	movl	$0,(%esp)
14	andl	$2147483647,%edx
15	movd	%eax,%mm2
16	movd	%ebx,%mm3
17	movl	%ecx,4(%esp)
18	xorl	%edx,%ecx
19	pxor	%mm5,%mm5
20	pxor	%mm4,%mm4
21	movl	%edx,8(%esp)
22	xorl	%ebp,%edx
23	movl	%ecx,12(%esp)
24	pcmpgtd	%mm2,%mm5
25	paddd	%mm2,%mm2
26	xorl	%edx,%ecx
27	movl	%ebp,16(%esp)
28	xorl	%edx,%ebp
29	pand	%mm3,%mm5
30	pcmpgtd	%mm2,%mm4
31	movl	%ecx,20(%esp)
32	xorl	%ecx,%ebp
33	psllq	$31,%mm5
34	pand	%mm3,%mm4
35	movl	%edx,24(%esp)
36	movl	$7,%esi
37	movl	%ebp,28(%esp)
38	movl	%esi,%ebp
39	andl	%ebx,%esi
40	shrl	$3,%ebx
41	movl	%ebp,%edi
42	psllq	$30,%mm4
43	andl	%ebx,%edi
44	shrl	$3,%ebx
45	movd	(%esp,%esi,4),%mm0
46	movl	%ebp,%esi
47	andl	%ebx,%esi
48	shrl	$3,%ebx
49	movd	(%esp,%edi,4),%mm2
50	movl	%ebp,%edi
51	psllq	$3,%mm2
52	andl	%ebx,%edi
53	shrl	$3,%ebx
54	pxor	%mm2,%mm0
55	movd	(%esp,%esi,4),%mm1
56	movl	%ebp,%esi
57	psllq	$6,%mm1
58	andl	%ebx,%esi
59	shrl	$3,%ebx
60	pxor	%mm1,%mm0
61	movd	(%esp,%edi,4),%mm2
62	movl	%ebp,%edi
63	psllq	$9,%mm2
64	andl	%ebx,%edi
65	shrl	$3,%ebx
66	pxor	%mm2,%mm0
67	movd	(%esp,%esi,4),%mm1
68	movl	%ebp,%esi
69	psllq	$12,%mm1
70	andl	%ebx,%esi
71	shrl	$3,%ebx
72	pxor	%mm1,%mm0
73	movd	(%esp,%edi,4),%mm2
74	movl	%ebp,%edi
75	psllq	$15,%mm2
76	andl	%ebx,%edi
77	shrl	$3,%ebx
78	pxor	%mm2,%mm0
79	movd	(%esp,%esi,4),%mm1
80	movl	%ebp,%esi
81	psllq	$18,%mm1
82	andl	%ebx,%esi
83	shrl	$3,%ebx
84	pxor	%mm1,%mm0
85	movd	(%esp,%edi,4),%mm2
86	movl	%ebp,%edi
87	psllq	$21,%mm2
88	andl	%ebx,%edi
89	shrl	$3,%ebx
90	pxor	%mm2,%mm0
91	movd	(%esp,%esi,4),%mm1
92	movl	%ebp,%esi
93	psllq	$24,%mm1
94	andl	%ebx,%esi
95	shrl	$3,%ebx
96	pxor	%mm1,%mm0
97	movd	(%esp,%edi,4),%mm2
98	pxor	%mm4,%mm0
99	psllq	$27,%mm2
100	pxor	%mm2,%mm0
101	movd	(%esp,%esi,4),%mm1
102	pxor	%mm5,%mm0
103	psllq	$30,%mm1
104	addl	$36,%esp
105	pxor	%mm1,%mm0
106	ret
107.size	_mul_1x1_mmx,.-_mul_1x1_mmx
108.type	_mul_1x1_ialu,@function
109.align	16
110_mul_1x1_ialu:
111	subl	$36,%esp
112	movl	%eax,%ecx
113	leal	(%eax,%eax,1),%edx
114	leal	(,%eax,4),%ebp
115	andl	$1073741823,%ecx
116	leal	(%eax,%eax,1),%edi
117	sarl	$31,%eax
118	movl	$0,(%esp)
119	andl	$2147483647,%edx
120	movl	%ecx,4(%esp)
121	xorl	%edx,%ecx
122	movl	%edx,8(%esp)
123	xorl	%ebp,%edx
124	movl	%ecx,12(%esp)
125	xorl	%edx,%ecx
126	movl	%ebp,16(%esp)
127	xorl	%edx,%ebp
128	movl	%ecx,20(%esp)
129	xorl	%ecx,%ebp
130	sarl	$31,%edi
131	andl	%ebx,%eax
132	movl	%edx,24(%esp)
133	andl	%ebx,%edi
134	movl	%ebp,28(%esp)
135	movl	%eax,%edx
136	shll	$31,%eax
137	movl	%edi,%ecx
138	shrl	$1,%edx
139	movl	$7,%esi
140	shll	$30,%edi
141	andl	%ebx,%esi
142	shrl	$2,%ecx
143	xorl	%edi,%eax
144	shrl	$3,%ebx
145	movl	$7,%edi
146	andl	%ebx,%edi
147	shrl	$3,%ebx
148	xorl	%ecx,%edx
149	xorl	(%esp,%esi,4),%eax
150	movl	$7,%esi
151	andl	%ebx,%esi
152	shrl	$3,%ebx
153	movl	(%esp,%edi,4),%ebp
154	movl	$7,%edi
155	movl	%ebp,%ecx
156	shll	$3,%ebp
157	andl	%ebx,%edi
158	shrl	$29,%ecx
159	xorl	%ebp,%eax
160	shrl	$3,%ebx
161	xorl	%ecx,%edx
162	movl	(%esp,%esi,4),%ecx
163	movl	$7,%esi
164	movl	%ecx,%ebp
165	shll	$6,%ecx
166	andl	%ebx,%esi
167	shrl	$26,%ebp
168	xorl	%ecx,%eax
169	shrl	$3,%ebx
170	xorl	%ebp,%edx
171	movl	(%esp,%edi,4),%ebp
172	movl	$7,%edi
173	movl	%ebp,%ecx
174	shll	$9,%ebp
175	andl	%ebx,%edi
176	shrl	$23,%ecx
177	xorl	%ebp,%eax
178	shrl	$3,%ebx
179	xorl	%ecx,%edx
180	movl	(%esp,%esi,4),%ecx
181	movl	$7,%esi
182	movl	%ecx,%ebp
183	shll	$12,%ecx
184	andl	%ebx,%esi
185	shrl	$20,%ebp
186	xorl	%ecx,%eax
187	shrl	$3,%ebx
188	xorl	%ebp,%edx
189	movl	(%esp,%edi,4),%ebp
190	movl	$7,%edi
191	movl	%ebp,%ecx
192	shll	$15,%ebp
193	andl	%ebx,%edi
194	shrl	$17,%ecx
195	xorl	%ebp,%eax
196	shrl	$3,%ebx
197	xorl	%ecx,%edx
198	movl	(%esp,%esi,4),%ecx
199	movl	$7,%esi
200	movl	%ecx,%ebp
201	shll	$18,%ecx
202	andl	%ebx,%esi
203	shrl	$14,%ebp
204	xorl	%ecx,%eax
205	shrl	$3,%ebx
206	xorl	%ebp,%edx
207	movl	(%esp,%edi,4),%ebp
208	movl	$7,%edi
209	movl	%ebp,%ecx
210	shll	$21,%ebp
211	andl	%ebx,%edi
212	shrl	$11,%ecx
213	xorl	%ebp,%eax
214	shrl	$3,%ebx
215	xorl	%ecx,%edx
216	movl	(%esp,%esi,4),%ecx
217	movl	$7,%esi
218	movl	%ecx,%ebp
219	shll	$24,%ecx
220	andl	%ebx,%esi
221	shrl	$8,%ebp
222	xorl	%ecx,%eax
223	shrl	$3,%ebx
224	xorl	%ebp,%edx
225	movl	(%esp,%edi,4),%ebp
226	movl	%ebp,%ecx
227	shll	$27,%ebp
228	movl	(%esp,%esi,4),%edi
229	shrl	$5,%ecx
230	movl	%edi,%esi
231	xorl	%ebp,%eax
232	shll	$30,%edi
233	xorl	%ecx,%edx
234	shrl	$2,%esi
235	xorl	%edi,%eax
236	xorl	%esi,%edx
237	addl	$36,%esp
238	ret
239.size	_mul_1x1_ialu,.-_mul_1x1_ialu
240.globl	bn_GF2m_mul_2x2
241.type	bn_GF2m_mul_2x2,@function
242.align	16
243bn_GF2m_mul_2x2:
244.L_bn_GF2m_mul_2x2_begin:
245	call	.L000PIC_me_up
246.L000PIC_me_up:
247	popl	%edx
248	leal	OPENSSL_ia32cap_P-.L000PIC_me_up(%edx),%edx
249	movl	(%edx),%eax
250	movl	4(%edx),%edx
251	testl	$8388608,%eax
252	jz	.L001ialu
253	testl	$16777216,%eax
254	jz	.L002mmx
255	testl	$2,%edx
256	jz	.L002mmx
257	movups	8(%esp),%xmm0
258	shufps	$177,%xmm0,%xmm0
259.byte	102,15,58,68,192,1
260	movl	4(%esp),%eax
261	movups	%xmm0,(%eax)
262	ret
263.align	16
264.L002mmx:
265	pushl	%ebp
266	pushl	%ebx
267	pushl	%esi
268	pushl	%edi
269	movl	24(%esp),%eax
270	movl	32(%esp),%ebx
271	call	_mul_1x1_mmx
272	movq	%mm0,%mm7
273	movl	28(%esp),%eax
274	movl	36(%esp),%ebx
275	call	_mul_1x1_mmx
276	movq	%mm0,%mm6
277	movl	24(%esp),%eax
278	movl	32(%esp),%ebx
279	xorl	28(%esp),%eax
280	xorl	36(%esp),%ebx
281	call	_mul_1x1_mmx
282	pxor	%mm7,%mm0
283	movl	20(%esp),%eax
284	pxor	%mm6,%mm0
285	movq	%mm0,%mm2
286	psllq	$32,%mm0
287	popl	%edi
288	psrlq	$32,%mm2
289	popl	%esi
290	pxor	%mm6,%mm0
291	popl	%ebx
292	pxor	%mm7,%mm2
293	movq	%mm0,(%eax)
294	popl	%ebp
295	movq	%mm2,8(%eax)
296	emms
297	ret
298.align	16
299.L001ialu:
300	pushl	%ebp
301	pushl	%ebx
302	pushl	%esi
303	pushl	%edi
304	subl	$20,%esp
305	movl	44(%esp),%eax
306	movl	52(%esp),%ebx
307	call	_mul_1x1_ialu
308	movl	%eax,8(%esp)
309	movl	%edx,12(%esp)
310	movl	48(%esp),%eax
311	movl	56(%esp),%ebx
312	call	_mul_1x1_ialu
313	movl	%eax,(%esp)
314	movl	%edx,4(%esp)
315	movl	44(%esp),%eax
316	movl	52(%esp),%ebx
317	xorl	48(%esp),%eax
318	xorl	56(%esp),%ebx
319	call	_mul_1x1_ialu
320	movl	40(%esp),%ebp
321	movl	(%esp),%ebx
322	movl	4(%esp),%ecx
323	movl	8(%esp),%edi
324	movl	12(%esp),%esi
325	xorl	%edx,%eax
326	xorl	%ecx,%edx
327	xorl	%ebx,%eax
328	movl	%ebx,(%ebp)
329	xorl	%edi,%edx
330	movl	%esi,12(%ebp)
331	xorl	%esi,%eax
332	addl	$20,%esp
333	xorl	%esi,%edx
334	popl	%edi
335	xorl	%edx,%eax
336	popl	%esi
337	movl	%edx,8(%ebp)
338	popl	%ebx
339	movl	%eax,4(%ebp)
340	popl	%ebp
341	ret
342.size	bn_GF2m_mul_2x2,.-.L_bn_GF2m_mul_2x2_begin
343.byte	71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105
344.byte	99,97,116,105,111,110,32,102,111,114,32,120,56,54,44,32
345.byte	67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
346.byte	112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
347.byte	62,0
348.comm	OPENSSL_ia32cap_P,16,4
349#else
350.text
351.type	_mul_1x1_mmx,@function
352.align	16
353_mul_1x1_mmx:
354	subl	$36,%esp
355	movl	%eax,%ecx
356	leal	(%eax,%eax,1),%edx
357	andl	$1073741823,%ecx
358	leal	(%edx,%edx,1),%ebp
359	movl	$0,(%esp)
360	andl	$2147483647,%edx
361	movd	%eax,%mm2
362	movd	%ebx,%mm3
363	movl	%ecx,4(%esp)
364	xorl	%edx,%ecx
365	pxor	%mm5,%mm5
366	pxor	%mm4,%mm4
367	movl	%edx,8(%esp)
368	xorl	%ebp,%edx
369	movl	%ecx,12(%esp)
370	pcmpgtd	%mm2,%mm5
371	paddd	%mm2,%mm2
372	xorl	%edx,%ecx
373	movl	%ebp,16(%esp)
374	xorl	%edx,%ebp
375	pand	%mm3,%mm5
376	pcmpgtd	%mm2,%mm4
377	movl	%ecx,20(%esp)
378	xorl	%ecx,%ebp
379	psllq	$31,%mm5
380	pand	%mm3,%mm4
381	movl	%edx,24(%esp)
382	movl	$7,%esi
383	movl	%ebp,28(%esp)
384	movl	%esi,%ebp
385	andl	%ebx,%esi
386	shrl	$3,%ebx
387	movl	%ebp,%edi
388	psllq	$30,%mm4
389	andl	%ebx,%edi
390	shrl	$3,%ebx
391	movd	(%esp,%esi,4),%mm0
392	movl	%ebp,%esi
393	andl	%ebx,%esi
394	shrl	$3,%ebx
395	movd	(%esp,%edi,4),%mm2
396	movl	%ebp,%edi
397	psllq	$3,%mm2
398	andl	%ebx,%edi
399	shrl	$3,%ebx
400	pxor	%mm2,%mm0
401	movd	(%esp,%esi,4),%mm1
402	movl	%ebp,%esi
403	psllq	$6,%mm1
404	andl	%ebx,%esi
405	shrl	$3,%ebx
406	pxor	%mm1,%mm0
407	movd	(%esp,%edi,4),%mm2
408	movl	%ebp,%edi
409	psllq	$9,%mm2
410	andl	%ebx,%edi
411	shrl	$3,%ebx
412	pxor	%mm2,%mm0
413	movd	(%esp,%esi,4),%mm1
414	movl	%ebp,%esi
415	psllq	$12,%mm1
416	andl	%ebx,%esi
417	shrl	$3,%ebx
418	pxor	%mm1,%mm0
419	movd	(%esp,%edi,4),%mm2
420	movl	%ebp,%edi
421	psllq	$15,%mm2
422	andl	%ebx,%edi
423	shrl	$3,%ebx
424	pxor	%mm2,%mm0
425	movd	(%esp,%esi,4),%mm1
426	movl	%ebp,%esi
427	psllq	$18,%mm1
428	andl	%ebx,%esi
429	shrl	$3,%ebx
430	pxor	%mm1,%mm0
431	movd	(%esp,%edi,4),%mm2
432	movl	%ebp,%edi
433	psllq	$21,%mm2
434	andl	%ebx,%edi
435	shrl	$3,%ebx
436	pxor	%mm2,%mm0
437	movd	(%esp,%esi,4),%mm1
438	movl	%ebp,%esi
439	psllq	$24,%mm1
440	andl	%ebx,%esi
441	shrl	$3,%ebx
442	pxor	%mm1,%mm0
443	movd	(%esp,%edi,4),%mm2
444	pxor	%mm4,%mm0
445	psllq	$27,%mm2
446	pxor	%mm2,%mm0
447	movd	(%esp,%esi,4),%mm1
448	pxor	%mm5,%mm0
449	psllq	$30,%mm1
450	addl	$36,%esp
451	pxor	%mm1,%mm0
452	ret
453.size	_mul_1x1_mmx,.-_mul_1x1_mmx
454.type	_mul_1x1_ialu,@function
455.align	16
456_mul_1x1_ialu:
457	subl	$36,%esp
458	movl	%eax,%ecx
459	leal	(%eax,%eax,1),%edx
460	leal	(,%eax,4),%ebp
461	andl	$1073741823,%ecx
462	leal	(%eax,%eax,1),%edi
463	sarl	$31,%eax
464	movl	$0,(%esp)
465	andl	$2147483647,%edx
466	movl	%ecx,4(%esp)
467	xorl	%edx,%ecx
468	movl	%edx,8(%esp)
469	xorl	%ebp,%edx
470	movl	%ecx,12(%esp)
471	xorl	%edx,%ecx
472	movl	%ebp,16(%esp)
473	xorl	%edx,%ebp
474	movl	%ecx,20(%esp)
475	xorl	%ecx,%ebp
476	sarl	$31,%edi
477	andl	%ebx,%eax
478	movl	%edx,24(%esp)
479	andl	%ebx,%edi
480	movl	%ebp,28(%esp)
481	movl	%eax,%edx
482	shll	$31,%eax
483	movl	%edi,%ecx
484	shrl	$1,%edx
485	movl	$7,%esi
486	shll	$30,%edi
487	andl	%ebx,%esi
488	shrl	$2,%ecx
489	xorl	%edi,%eax
490	shrl	$3,%ebx
491	movl	$7,%edi
492	andl	%ebx,%edi
493	shrl	$3,%ebx
494	xorl	%ecx,%edx
495	xorl	(%esp,%esi,4),%eax
496	movl	$7,%esi
497	andl	%ebx,%esi
498	shrl	$3,%ebx
499	movl	(%esp,%edi,4),%ebp
500	movl	$7,%edi
501	movl	%ebp,%ecx
502	shll	$3,%ebp
503	andl	%ebx,%edi
504	shrl	$29,%ecx
505	xorl	%ebp,%eax
506	shrl	$3,%ebx
507	xorl	%ecx,%edx
508	movl	(%esp,%esi,4),%ecx
509	movl	$7,%esi
510	movl	%ecx,%ebp
511	shll	$6,%ecx
512	andl	%ebx,%esi
513	shrl	$26,%ebp
514	xorl	%ecx,%eax
515	shrl	$3,%ebx
516	xorl	%ebp,%edx
517	movl	(%esp,%edi,4),%ebp
518	movl	$7,%edi
519	movl	%ebp,%ecx
520	shll	$9,%ebp
521	andl	%ebx,%edi
522	shrl	$23,%ecx
523	xorl	%ebp,%eax
524	shrl	$3,%ebx
525	xorl	%ecx,%edx
526	movl	(%esp,%esi,4),%ecx
527	movl	$7,%esi
528	movl	%ecx,%ebp
529	shll	$12,%ecx
530	andl	%ebx,%esi
531	shrl	$20,%ebp
532	xorl	%ecx,%eax
533	shrl	$3,%ebx
534	xorl	%ebp,%edx
535	movl	(%esp,%edi,4),%ebp
536	movl	$7,%edi
537	movl	%ebp,%ecx
538	shll	$15,%ebp
539	andl	%ebx,%edi
540	shrl	$17,%ecx
541	xorl	%ebp,%eax
542	shrl	$3,%ebx
543	xorl	%ecx,%edx
544	movl	(%esp,%esi,4),%ecx
545	movl	$7,%esi
546	movl	%ecx,%ebp
547	shll	$18,%ecx
548	andl	%ebx,%esi
549	shrl	$14,%ebp
550	xorl	%ecx,%eax
551	shrl	$3,%ebx
552	xorl	%ebp,%edx
553	movl	(%esp,%edi,4),%ebp
554	movl	$7,%edi
555	movl	%ebp,%ecx
556	shll	$21,%ebp
557	andl	%ebx,%edi
558	shrl	$11,%ecx
559	xorl	%ebp,%eax
560	shrl	$3,%ebx
561	xorl	%ecx,%edx
562	movl	(%esp,%esi,4),%ecx
563	movl	$7,%esi
564	movl	%ecx,%ebp
565	shll	$24,%ecx
566	andl	%ebx,%esi
567	shrl	$8,%ebp
568	xorl	%ecx,%eax
569	shrl	$3,%ebx
570	xorl	%ebp,%edx
571	movl	(%esp,%edi,4),%ebp
572	movl	%ebp,%ecx
573	shll	$27,%ebp
574	movl	(%esp,%esi,4),%edi
575	shrl	$5,%ecx
576	movl	%edi,%esi
577	xorl	%ebp,%eax
578	shll	$30,%edi
579	xorl	%ecx,%edx
580	shrl	$2,%esi
581	xorl	%edi,%eax
582	xorl	%esi,%edx
583	addl	$36,%esp
584	ret
585.size	_mul_1x1_ialu,.-_mul_1x1_ialu
586.globl	bn_GF2m_mul_2x2
587.type	bn_GF2m_mul_2x2,@function
588.align	16
589bn_GF2m_mul_2x2:
590.L_bn_GF2m_mul_2x2_begin:
591	leal	OPENSSL_ia32cap_P,%edx
592	movl	(%edx),%eax
593	movl	4(%edx),%edx
594	testl	$8388608,%eax
595	jz	.L000ialu
596	testl	$16777216,%eax
597	jz	.L001mmx
598	testl	$2,%edx
599	jz	.L001mmx
600	movups	8(%esp),%xmm0
601	shufps	$177,%xmm0,%xmm0
602.byte	102,15,58,68,192,1
603	movl	4(%esp),%eax
604	movups	%xmm0,(%eax)
605	ret
606.align	16
607.L001mmx:
608	pushl	%ebp
609	pushl	%ebx
610	pushl	%esi
611	pushl	%edi
612	movl	24(%esp),%eax
613	movl	32(%esp),%ebx
614	call	_mul_1x1_mmx
615	movq	%mm0,%mm7
616	movl	28(%esp),%eax
617	movl	36(%esp),%ebx
618	call	_mul_1x1_mmx
619	movq	%mm0,%mm6
620	movl	24(%esp),%eax
621	movl	32(%esp),%ebx
622	xorl	28(%esp),%eax
623	xorl	36(%esp),%ebx
624	call	_mul_1x1_mmx
625	pxor	%mm7,%mm0
626	movl	20(%esp),%eax
627	pxor	%mm6,%mm0
628	movq	%mm0,%mm2
629	psllq	$32,%mm0
630	popl	%edi
631	psrlq	$32,%mm2
632	popl	%esi
633	pxor	%mm6,%mm0
634	popl	%ebx
635	pxor	%mm7,%mm2
636	movq	%mm0,(%eax)
637	popl	%ebp
638	movq	%mm2,8(%eax)
639	emms
640	ret
641.align	16
642.L000ialu:
643	pushl	%ebp
644	pushl	%ebx
645	pushl	%esi
646	pushl	%edi
647	subl	$20,%esp
648	movl	44(%esp),%eax
649	movl	52(%esp),%ebx
650	call	_mul_1x1_ialu
651	movl	%eax,8(%esp)
652	movl	%edx,12(%esp)
653	movl	48(%esp),%eax
654	movl	56(%esp),%ebx
655	call	_mul_1x1_ialu
656	movl	%eax,(%esp)
657	movl	%edx,4(%esp)
658	movl	44(%esp),%eax
659	movl	52(%esp),%ebx
660	xorl	48(%esp),%eax
661	xorl	56(%esp),%ebx
662	call	_mul_1x1_ialu
663	movl	40(%esp),%ebp
664	movl	(%esp),%ebx
665	movl	4(%esp),%ecx
666	movl	8(%esp),%edi
667	movl	12(%esp),%esi
668	xorl	%edx,%eax
669	xorl	%ecx,%edx
670	xorl	%ebx,%eax
671	movl	%ebx,(%ebp)
672	xorl	%edi,%edx
673	movl	%esi,12(%ebp)
674	xorl	%esi,%eax
675	addl	$20,%esp
676	xorl	%esi,%edx
677	popl	%edi
678	xorl	%edx,%eax
679	popl	%esi
680	movl	%edx,8(%ebp)
681	popl	%ebx
682	movl	%eax,4(%ebp)
683	popl	%ebp
684	ret
685.size	bn_GF2m_mul_2x2,.-.L_bn_GF2m_mul_2x2_begin
686.byte	71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105
687.byte	99,97,116,105,111,110,32,102,111,114,32,120,56,54,44,32
688.byte	67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
689.byte	112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
690.byte	62,0
691.comm	OPENSSL_ia32cap_P,16,4
692#endif
693