2 # Do not modify. This file is auto-generated from ghash-x86.pl.
6 .globl gcm_gmult_4bit_x86
7 .type gcm_gmult_4bit_x86,@function
10 .L_gcm_gmult_4bit_x86_begin:
23 movl $471859200,20(%esp)
24 movl $943718400,24(%esp)
25 movl $610271232,28(%esp)
26 movl $1887436800,32(%esp)
27 movl $1822425088,36(%esp)
28 movl $1220542464,40(%esp)
29 movl $1423966208,44(%esp)
30 movl $3774873600,48(%esp)
31 movl $4246732800,52(%esp)
32 movl $3644850176,56(%esp)
33 movl $3311403008,60(%esp)
34 movl $2441084928,64(%esp)
35 movl $2376073216,68(%esp)
36 movl $2847932416,72(%esp)
37 movl $3051356160,76(%esp)
44 movl 4(%esi,%ebx,1),%ebp
45 movl (%esi,%ebx,1),%edx
46 movl 12(%esi,%ebx,1),%ecx
47 movl 8(%esi,%ebx,1),%ebx
59 xorl 16(%esp,%eax,4),%ebp
60 movb (%esp,%edi,1),%al
62 xorl 8(%esi,%eax,1),%ebx
63 xorl 12(%esi,%eax,1),%ecx
64 xorl (%esi,%eax,1),%edx
65 xorl 4(%esi,%eax,1),%ebp
74 xorl 16(%esp,%eax,4),%ebp
75 movb (%esp,%edi,1),%al
77 xorl 8(%esi,%eax,1),%ebx
78 xorl 12(%esi,%eax,1),%ecx
79 xorl (%esi,%eax,1),%edx
80 xorl 4(%esi,%eax,1),%ebp
99 .size gcm_gmult_4bit_x86,.-.L_gcm_gmult_4bit_x86_begin
100 .globl gcm_ghash_4bit_x86
101 .type gcm_ghash_4bit_x86,@function
104 .L_gcm_ghash_4bit_x86_begin:
121 movl $471859200,20(%esp)
122 movl $943718400,24(%esp)
123 movl $610271232,28(%esp)
124 movl $1887436800,32(%esp)
125 movl $1822425088,36(%esp)
126 movl $1220542464,40(%esp)
127 movl $1423966208,44(%esp)
128 movl $3774873600,48(%esp)
129 movl $4246732800,52(%esp)
130 movl $3644850176,56(%esp)
131 movl $3311403008,60(%esp)
132 movl $2441084928,64(%esp)
133 movl $2376073216,68(%esp)
134 movl $2847932416,72(%esp)
135 movl $3051356160,76(%esp)
148 movl 4(%esi,%ebx,1),%ebp
149 movl (%esi,%ebx,1),%edx
150 movl 12(%esi,%ebx,1),%ecx
151 movl 8(%esi,%ebx,1),%ebx
163 xorl 16(%esp,%eax,4),%ebp
164 movb (%esp,%edi,1),%al
166 xorl 8(%esi,%eax,1),%ebx
167 xorl 12(%esi,%eax,1),%ecx
168 xorl (%esi,%eax,1),%edx
169 xorl 4(%esi,%eax,1),%ebp
178 xorl 16(%esp,%eax,4),%ebp
179 movb (%esp,%edi,1),%al
181 xorl 8(%esi,%eax,1),%ebx
182 xorl 12(%esi,%eax,1),%ecx
183 xorl (%esi,%eax,1),%edx
184 xorl 4(%esi,%eax,1),%ebp
196 jb .L002x86_outer_loop
208 .size gcm_ghash_4bit_x86,.-.L_gcm_ghash_4bit_x86_begin
209 .globl gcm_gmult_4bit_mmx
210 .type gcm_gmult_4bit_mmx,@function
213 .L_gcm_gmult_4bit_mmx_begin:
223 leal .Lrem_4bit-.L005pic_point(%eax),%eax
231 movq 8(%esi,%ecx,1),%mm0
232 movq (%esi,%ecx,1),%mm1
241 pxor 8(%esi,%edx,1),%mm0
242 movb (%edi,%ebp,1),%cl
244 pxor (%eax,%ebx,8),%mm1
247 pxor (%esi,%edx,1),%mm1
257 pxor 8(%esi,%ecx,1),%mm0
259 pxor (%eax,%ebx,8),%mm1
261 pxor (%esi,%ecx,1),%mm1
272 pxor 8(%esi,%ecx,1),%mm0
274 pxor (%eax,%ebx,8),%mm1
276 pxor (%esi,%ecx,1),%mm1
282 pxor 8(%esi,%edx,1),%mm0
284 pxor (%eax,%ebx,8),%mm1
286 pxor (%esi,%edx,1),%mm1
307 .size gcm_gmult_4bit_mmx,.-.L_gcm_gmult_4bit_mmx_begin
308 .globl gcm_ghash_4bit_mmx
309 .type gcm_ghash_4bit_mmx,@function
312 .L_gcm_ghash_4bit_mmx_begin:
325 leal .Lrem_8bit-.L008pic_point(%esi),%esi
582 movq 16(%esp,%eax,8),%mm7
583 movq 144(%esp,%eax,8),%mm6
590 pxor 272(%esp,%ebp,8),%mm7
594 pxor 16(%esp,%eax,8),%mm7
596 pxor 144(%esp,%eax,8),%mm6
598 pxor 400(%esp,%ebp,8),%mm6
599 xorb (%esp,%ebp,1),%bl
607 pxor 272(%esp,%edi,8),%mm7
611 pinsrw $2,(%esi,%ebx,2),%mm2
612 pxor 16(%esp,%eax,8),%mm7
614 pxor 144(%esp,%eax,8),%mm6
616 pxor 400(%esp,%edi,8),%mm6
617 xorb (%esp,%edi,1),%cl
626 pxor 272(%esp,%ebp,8),%mm7
631 pinsrw $2,(%esi,%ecx,2),%mm1
632 pxor 16(%esp,%eax,8),%mm7
634 pxor 144(%esp,%eax,8),%mm6
636 pxor 400(%esp,%ebp,8),%mm6
637 xorb (%esp,%ebp,1),%bl
645 pxor 272(%esp,%edi,8),%mm7
650 pinsrw $2,(%esi,%ebx,2),%mm0
651 pxor 16(%esp,%eax,8),%mm7
653 pxor 144(%esp,%eax,8),%mm6
655 pxor 400(%esp,%edi,8),%mm6
656 xorb (%esp,%edi,1),%cl
664 pxor 272(%esp,%ebp,8),%mm7
669 pinsrw $2,(%esi,%ecx,2),%mm2
670 pxor 16(%esp,%eax,8),%mm7
672 pxor 144(%esp,%eax,8),%mm6
674 pxor 400(%esp,%ebp,8),%mm6
675 xorb (%esp,%ebp,1),%bl
683 pxor 272(%esp,%edi,8),%mm7
688 pinsrw $2,(%esi,%ebx,2),%mm1
689 pxor 16(%esp,%eax,8),%mm7
691 pxor 144(%esp,%eax,8),%mm6
693 pxor 400(%esp,%edi,8),%mm6
694 xorb (%esp,%edi,1),%cl
703 pxor 272(%esp,%ebp,8),%mm7
708 pinsrw $2,(%esi,%ecx,2),%mm0
709 pxor 16(%esp,%eax,8),%mm7
711 pxor 144(%esp,%eax,8),%mm6
713 pxor 400(%esp,%ebp,8),%mm6
714 xorb (%esp,%ebp,1),%bl
722 pxor 272(%esp,%edi,8),%mm7
727 pinsrw $2,(%esi,%ebx,2),%mm2
728 pxor 16(%esp,%eax,8),%mm7
730 pxor 144(%esp,%eax,8),%mm6
732 pxor 400(%esp,%edi,8),%mm6
733 xorb (%esp,%edi,1),%cl
741 pxor 272(%esp,%ebp,8),%mm7
746 pinsrw $2,(%esi,%ecx,2),%mm1
747 pxor 16(%esp,%eax,8),%mm7
749 pxor 144(%esp,%eax,8),%mm6
751 pxor 400(%esp,%ebp,8),%mm6
752 xorb (%esp,%ebp,1),%bl
760 pxor 272(%esp,%edi,8),%mm7
765 pinsrw $2,(%esi,%ebx,2),%mm0
766 pxor 16(%esp,%eax,8),%mm7
768 pxor 144(%esp,%eax,8),%mm6
770 pxor 400(%esp,%edi,8),%mm6
771 xorb (%esp,%edi,1),%cl
780 pxor 272(%esp,%ebp,8),%mm7
785 pinsrw $2,(%esi,%ecx,2),%mm2
786 pxor 16(%esp,%eax,8),%mm7
788 pxor 144(%esp,%eax,8),%mm6
790 pxor 400(%esp,%ebp,8),%mm6
791 xorb (%esp,%ebp,1),%bl
799 pxor 272(%esp,%edi,8),%mm7
804 pinsrw $2,(%esi,%ebx,2),%mm1
805 pxor 16(%esp,%eax,8),%mm7
807 pxor 144(%esp,%eax,8),%mm6
809 pxor 400(%esp,%edi,8),%mm6
810 xorb (%esp,%edi,1),%cl
818 pxor 272(%esp,%ebp,8),%mm7
823 pinsrw $2,(%esi,%ecx,2),%mm0
824 pxor 16(%esp,%eax,8),%mm7
826 pxor 144(%esp,%eax,8),%mm6
828 pxor 400(%esp,%ebp,8),%mm6
829 xorb (%esp,%ebp,1),%bl
837 pxor 272(%esp,%edi,8),%mm7
842 pinsrw $2,(%esi,%ebx,2),%mm2
843 pxor 16(%esp,%eax,8),%mm7
845 pxor 144(%esp,%eax,8),%mm6
847 pxor 400(%esp,%edi,8),%mm6
848 xorb (%esp,%edi,1),%cl
857 pxor 272(%esp,%ebp,8),%mm7
862 pinsrw $2,(%esi,%ecx,2),%mm1
863 pxor 16(%esp,%eax,8),%mm7
864 pxor 144(%esp,%eax,8),%mm6
865 xorb (%esp,%ebp,1),%bl
867 pxor 400(%esp,%ebp,8),%mm6
876 pxor 16(%esp,%edi,8),%mm7
880 pxor 144(%esp,%edi,8),%mm6
881 pinsrw $2,(%esi,%ebx,2),%mm0
884 pinsrw $3,(%esi,%ecx,2),%mm2
911 .size gcm_ghash_4bit_mmx,.-.L_gcm_ghash_4bit_mmx_begin
912 .globl gcm_init_clmul
913 .type gcm_init_clmul,@function
916 .L_gcm_init_clmul_begin:
922 leal .Lbswap-.L010pic(%ecx),%ecx
924 pshufd $78,%xmm2,%xmm2
925 pshufd $255,%xmm2,%xmm4
937 pshufd $78,%xmm0,%xmm3
938 pshufd $78,%xmm2,%xmm4
941 .byte 102,15,58,68,194,0
942 .byte 102,15,58,68,202,17
943 .byte 102,15,58,68,220,0
971 movdqu %xmm0,16(%edx)
973 .size gcm_init_clmul,.-.L_gcm_init_clmul_begin
974 .globl gcm_gmult_clmul
975 .type gcm_gmult_clmul,@function
978 .L_gcm_gmult_clmul_begin:
984 leal .Lbswap-.L011pic(%ecx),%ecx
988 .byte 102,15,56,0,197
990 pshufd $78,%xmm0,%xmm3
991 pshufd $78,%xmm2,%xmm4
994 .byte 102,15,58,68,194,0
995 .byte 102,15,58,68,202,17
996 .byte 102,15,58,68,220,0
1023 .byte 102,15,56,0,197
1026 .size gcm_gmult_clmul,.-.L_gcm_gmult_clmul_begin
1027 .globl gcm_ghash_clmul
1028 .type gcm_ghash_clmul,@function
1031 .L_gcm_ghash_clmul_begin:
1043 leal .Lbswap-.L012pic(%ecx),%ecx
1047 .byte 102,15,56,0,197
1051 movdqu 16(%esi),%xmm6
1052 .byte 102,15,56,0,221
1053 .byte 102,15,56,0,245
1056 pshufd $78,%xmm6,%xmm3
1057 pshufd $78,%xmm2,%xmm4
1060 .byte 102,15,58,68,242,0
1061 .byte 102,15,58,68,250,17
1062 .byte 102,15,58,68,220,0
1070 movups 16(%edx),%xmm2
1076 pshufd $78,%xmm0,%xmm3
1077 pshufd $78,%xmm2,%xmm4
1080 .byte 102,15,58,68,194,0
1081 .byte 102,15,58,68,202,17
1082 .byte 102,15,58,68,220,0
1094 movdqu 16(%esi),%xmm6
1095 .byte 102,15,56,0,221
1096 .byte 102,15,56,0,245
1105 .byte 102,15,58,68,242,0
1111 pshufd $78,%xmm5,%xmm3
1114 pshufd $78,%xmm2,%xmm5
1116 .byte 102,15,58,68,250,17
1125 .byte 102,15,58,68,221,0
1126 movups 16(%edx),%xmm2
1140 pshufd $78,%xmm0,%xmm3
1141 pshufd $78,%xmm2,%xmm4
1144 .byte 102,15,58,68,194,0
1145 .byte 102,15,58,68,202,17
1146 .byte 102,15,58,68,220,0
1180 .byte 102,15,56,0,221
1183 pshufd $78,%xmm0,%xmm3
1184 pshufd $78,%xmm2,%xmm4
1187 .byte 102,15,58,68,194,0
1188 .byte 102,15,58,68,202,17
1189 .byte 102,15,58,68,220,0
1217 .byte 102,15,56,0,197
1224 .size gcm_ghash_clmul,.-.L_gcm_ghash_clmul_begin
1227 .byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
1228 .byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194
1231 .long 0,0,0,471859200,0,943718400,0,610271232
1232 .long 0,1887436800,0,1822425088,0,1220542464,0,1423966208
1233 .long 0,3774873600,0,4246732800,0,3644850176,0,3311403008
1234 .long 0,2441084928,0,2376073216,0,2847932416,0,3051356160
1237 .value 0,450,900,582,1800,1738,1164,1358
1238 .value 3600,4050,3476,3158,2328,2266,2716,2910
1239 .value 7200,7650,8100,7782,6952,6890,6316,6510
1240 .value 4656,5106,4532,4214,5432,5370,5820,6014
1241 .value 14400,14722,15300,14854,16200,16010,15564,15630
1242 .value 13904,14226,13780,13334,12632,12442,13020,13086
1243 .value 9312,9634,10212,9766,9064,8874,8428,8494
1244 .value 10864,11186,10740,10294,11640,11450,12028,12094
1245 .value 28800,28994,29444,29382,30600,30282,29708,30158
1246 .value 32400,32594,32020,31958,31128,30810,31260,31710
1247 .value 27808,28002,28452,28390,27560,27242,26668,27118
1248 .value 25264,25458,24884,24822,26040,25722,26172,26622
1249 .value 18624,18690,19268,19078,20424,19978,19532,19854
1250 .value 18128,18194,17748,17558,16856,16410,16988,17310
1251 .value 21728,21794,22372,22182,21480,21034,20588,20910
1252 .value 23280,23346,22900,22710,24056,23610,24188,24510
1253 .value 57600,57538,57988,58182,58888,59338,58764,58446
1254 .value 61200,61138,60564,60758,59416,59866,60316,59998
1255 .value 64800,64738,65188,65382,64040,64490,63916,63598
1256 .value 62256,62194,61620,61814,62520,62970,63420,63102
1257 .value 55616,55426,56004,56070,56904,57226,56780,56334
1258 .value 55120,54930,54484,54550,53336,53658,54236,53790
1259 .value 50528,50338,50916,50982,49768,50090,49644,49198
1260 .value 52080,51890,51444,51510,52344,52666,53244,52798
1261 .value 37248,36930,37380,37830,38536,38730,38156,38094
1262 .value 40848,40530,39956,40406,39064,39258,39708,39646
1263 .value 36256,35938,36388,36838,35496,35690,35116,35054
1264 .value 33712,33394,32820,33270,33976,34170,34620,34558
1265 .value 43456,43010,43588,43910,44744,44810,44364,44174
1266 .value 42960,42514,42068,42390,41176,41242,41820,41630
1267 .value 46560,46114,46692,47014,45800,45866,45420,45230
1268 .value 48112,47666,47220,47542,48376,48442,49020,48830
1269 .byte 71,72,65,83,72,32,102,111,114,32,120,56,54,44,32,67
1270 .byte 82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112
1271 .byte 112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62
1276 .globl gcm_gmult_4bit_x86
1277 .type gcm_gmult_4bit_x86,@function
1280 .L_gcm_gmult_4bit_x86_begin:
1293 movl $471859200,20(%esp)
1294 movl $943718400,24(%esp)
1295 movl $610271232,28(%esp)
1296 movl $1887436800,32(%esp)
1297 movl $1822425088,36(%esp)
1298 movl $1220542464,40(%esp)
1299 movl $1423966208,44(%esp)
1300 movl $3774873600,48(%esp)
1301 movl $4246732800,52(%esp)
1302 movl $3644850176,56(%esp)
1303 movl $3311403008,60(%esp)
1304 movl $2441084928,64(%esp)
1305 movl $2376073216,68(%esp)
1306 movl $2847932416,72(%esp)
1307 movl $3051356160,76(%esp)
1314 movl 4(%esi,%ebx,1),%ebp
1315 movl (%esi,%ebx,1),%edx
1316 movl 12(%esi,%ebx,1),%ecx
1317 movl 8(%esi,%ebx,1),%ebx
1329 xorl 16(%esp,%eax,4),%ebp
1330 movb (%esp,%edi,1),%al
1332 xorl 8(%esi,%eax,1),%ebx
1333 xorl 12(%esi,%eax,1),%ecx
1334 xorl (%esi,%eax,1),%edx
1335 xorl 4(%esi,%eax,1),%ebp
1344 xorl 16(%esp,%eax,4),%ebp
1345 movb (%esp,%edi,1),%al
1347 xorl 8(%esi,%eax,1),%ebx
1348 xorl 12(%esi,%eax,1),%ecx
1349 xorl (%esi,%eax,1),%edx
1350 xorl 4(%esi,%eax,1),%ebp
1369 .size gcm_gmult_4bit_x86,.-.L_gcm_gmult_4bit_x86_begin
1370 .globl gcm_ghash_4bit_x86
1371 .type gcm_ghash_4bit_x86,@function
1374 .L_gcm_ghash_4bit_x86_begin:
1391 movl $471859200,20(%esp)
1392 movl $943718400,24(%esp)
1393 movl $610271232,28(%esp)
1394 movl $1887436800,32(%esp)
1395 movl $1822425088,36(%esp)
1396 movl $1220542464,40(%esp)
1397 movl $1423966208,44(%esp)
1398 movl $3774873600,48(%esp)
1399 movl $4246732800,52(%esp)
1400 movl $3644850176,56(%esp)
1401 movl $3311403008,60(%esp)
1402 movl $2441084928,64(%esp)
1403 movl $2376073216,68(%esp)
1404 movl $2847932416,72(%esp)
1405 movl $3051356160,76(%esp)
1407 .L002x86_outer_loop:
1418 movl 4(%esi,%ebx,1),%ebp
1419 movl (%esi,%ebx,1),%edx
1420 movl 12(%esi,%ebx,1),%ecx
1421 movl 8(%esi,%ebx,1),%ebx
1433 xorl 16(%esp,%eax,4),%ebp
1434 movb (%esp,%edi,1),%al
1436 xorl 8(%esi,%eax,1),%ebx
1437 xorl 12(%esi,%eax,1),%ecx
1438 xorl (%esi,%eax,1),%edx
1439 xorl 4(%esi,%eax,1),%ebp
1448 xorl 16(%esp,%eax,4),%ebp
1449 movb (%esp,%edi,1),%al
1451 xorl 8(%esi,%eax,1),%ebx
1452 xorl 12(%esi,%eax,1),%ecx
1453 xorl (%esi,%eax,1),%edx
1454 xorl 4(%esi,%eax,1),%ebp
1466 jb .L002x86_outer_loop
1478 .size gcm_ghash_4bit_x86,.-.L_gcm_ghash_4bit_x86_begin
1479 .globl gcm_gmult_4bit_mmx
1480 .type gcm_gmult_4bit_mmx,@function
1483 .L_gcm_gmult_4bit_mmx_begin:
1493 leal .Lrem_4bit-.L005pic_point(%eax),%eax
1494 movzbl 15(%edi),%ebx
1501 movq 8(%esi,%ecx,1),%mm0
1502 movq (%esi,%ecx,1),%mm1
1511 pxor 8(%esi,%edx,1),%mm0
1512 movb (%edi,%ebp,1),%cl
1514 pxor (%eax,%ebx,8),%mm1
1517 pxor (%esi,%edx,1),%mm1
1527 pxor 8(%esi,%ecx,1),%mm0
1529 pxor (%eax,%ebx,8),%mm1
1531 pxor (%esi,%ecx,1),%mm1
1542 pxor 8(%esi,%ecx,1),%mm0
1544 pxor (%eax,%ebx,8),%mm1
1546 pxor (%esi,%ecx,1),%mm1
1552 pxor 8(%esi,%edx,1),%mm0
1554 pxor (%eax,%ebx,8),%mm1
1556 pxor (%esi,%edx,1),%mm1
1577 .size gcm_gmult_4bit_mmx,.-.L_gcm_gmult_4bit_mmx_begin
1578 .globl gcm_ghash_4bit_mmx
1579 .type gcm_ghash_4bit_mmx,@function
1582 .L_gcm_ghash_4bit_mmx_begin:
1595 leal .Lrem_8bit-.L008pic_point(%esi),%esi
1606 movl -120(%ebx),%edx
1607 movq -120(%ebx),%mm0
1608 movq -128(%ebx),%mm3
1611 movl -104(%ebx),%edx
1612 movq -104(%ebx),%mm2
1613 movq -112(%ebx),%mm5
1614 movq %mm0,-128(%edi)
1626 movq %mm2,-120(%edi)
1630 movq %mm0,-128(%ebp)
1640 movq %mm1,-112(%edi)
1644 movq %mm2,-120(%ebp)
1654 movq %mm0,-104(%edi)
1658 movq %mm1,-112(%ebp)
1672 movq %mm0,-104(%ebp)
1852 movq 16(%esp,%eax,8),%mm7
1853 movq 144(%esp,%eax,8),%mm6
1860 pxor 272(%esp,%ebp,8),%mm7
1864 pxor 16(%esp,%eax,8),%mm7
1866 pxor 144(%esp,%eax,8),%mm6
1868 pxor 400(%esp,%ebp,8),%mm6
1869 xorb (%esp,%ebp,1),%bl
1877 pxor 272(%esp,%edi,8),%mm7
1881 pinsrw $2,(%esi,%ebx,2),%mm2
1882 pxor 16(%esp,%eax,8),%mm7
1884 pxor 144(%esp,%eax,8),%mm6
1886 pxor 400(%esp,%edi,8),%mm6
1887 xorb (%esp,%edi,1),%cl
1896 pxor 272(%esp,%ebp,8),%mm7
1901 pinsrw $2,(%esi,%ecx,2),%mm1
1902 pxor 16(%esp,%eax,8),%mm7
1904 pxor 144(%esp,%eax,8),%mm6
1906 pxor 400(%esp,%ebp,8),%mm6
1907 xorb (%esp,%ebp,1),%bl
1915 pxor 272(%esp,%edi,8),%mm7
1920 pinsrw $2,(%esi,%ebx,2),%mm0
1921 pxor 16(%esp,%eax,8),%mm7
1923 pxor 144(%esp,%eax,8),%mm6
1925 pxor 400(%esp,%edi,8),%mm6
1926 xorb (%esp,%edi,1),%cl
1934 pxor 272(%esp,%ebp,8),%mm7
1939 pinsrw $2,(%esi,%ecx,2),%mm2
1940 pxor 16(%esp,%eax,8),%mm7
1942 pxor 144(%esp,%eax,8),%mm6
1944 pxor 400(%esp,%ebp,8),%mm6
1945 xorb (%esp,%ebp,1),%bl
1953 pxor 272(%esp,%edi,8),%mm7
1958 pinsrw $2,(%esi,%ebx,2),%mm1
1959 pxor 16(%esp,%eax,8),%mm7
1961 pxor 144(%esp,%eax,8),%mm6
1963 pxor 400(%esp,%edi,8),%mm6
1964 xorb (%esp,%edi,1),%cl
1973 pxor 272(%esp,%ebp,8),%mm7
1978 pinsrw $2,(%esi,%ecx,2),%mm0
1979 pxor 16(%esp,%eax,8),%mm7
1981 pxor 144(%esp,%eax,8),%mm6
1983 pxor 400(%esp,%ebp,8),%mm6
1984 xorb (%esp,%ebp,1),%bl
1992 pxor 272(%esp,%edi,8),%mm7
1997 pinsrw $2,(%esi,%ebx,2),%mm2
1998 pxor 16(%esp,%eax,8),%mm7
2000 pxor 144(%esp,%eax,8),%mm6
2002 pxor 400(%esp,%edi,8),%mm6
2003 xorb (%esp,%edi,1),%cl
2011 pxor 272(%esp,%ebp,8),%mm7
2016 pinsrw $2,(%esi,%ecx,2),%mm1
2017 pxor 16(%esp,%eax,8),%mm7
2019 pxor 144(%esp,%eax,8),%mm6
2021 pxor 400(%esp,%ebp,8),%mm6
2022 xorb (%esp,%ebp,1),%bl
2030 pxor 272(%esp,%edi,8),%mm7
2035 pinsrw $2,(%esi,%ebx,2),%mm0
2036 pxor 16(%esp,%eax,8),%mm7
2038 pxor 144(%esp,%eax,8),%mm6
2040 pxor 400(%esp,%edi,8),%mm6
2041 xorb (%esp,%edi,1),%cl
2050 pxor 272(%esp,%ebp,8),%mm7
2055 pinsrw $2,(%esi,%ecx,2),%mm2
2056 pxor 16(%esp,%eax,8),%mm7
2058 pxor 144(%esp,%eax,8),%mm6
2060 pxor 400(%esp,%ebp,8),%mm6
2061 xorb (%esp,%ebp,1),%bl
2069 pxor 272(%esp,%edi,8),%mm7
2074 pinsrw $2,(%esi,%ebx,2),%mm1
2075 pxor 16(%esp,%eax,8),%mm7
2077 pxor 144(%esp,%eax,8),%mm6
2079 pxor 400(%esp,%edi,8),%mm6
2080 xorb (%esp,%edi,1),%cl
2088 pxor 272(%esp,%ebp,8),%mm7
2093 pinsrw $2,(%esi,%ecx,2),%mm0
2094 pxor 16(%esp,%eax,8),%mm7
2096 pxor 144(%esp,%eax,8),%mm6
2098 pxor 400(%esp,%ebp,8),%mm6
2099 xorb (%esp,%ebp,1),%bl
2107 pxor 272(%esp,%edi,8),%mm7
2112 pinsrw $2,(%esi,%ebx,2),%mm2
2113 pxor 16(%esp,%eax,8),%mm7
2115 pxor 144(%esp,%eax,8),%mm6
2117 pxor 400(%esp,%edi,8),%mm6
2118 xorb (%esp,%edi,1),%cl
2127 pxor 272(%esp,%ebp,8),%mm7
2132 pinsrw $2,(%esi,%ecx,2),%mm1
2133 pxor 16(%esp,%eax,8),%mm7
2134 pxor 144(%esp,%eax,8),%mm6
2135 xorb (%esp,%ebp,1),%bl
2137 pxor 400(%esp,%ebp,8),%mm6
2146 pxor 16(%esp,%edi,8),%mm7
2150 pxor 144(%esp,%edi,8),%mm6
2151 pinsrw $2,(%esi,%ebx,2),%mm0
2154 pinsrw $3,(%esi,%ecx,2),%mm2
2166 pshufw $27,%mm6,%mm6
2181 .size gcm_ghash_4bit_mmx,.-.L_gcm_ghash_4bit_mmx_begin
2182 .globl gcm_init_clmul
2183 .type gcm_init_clmul,@function
2186 .L_gcm_init_clmul_begin:
2192 leal .Lbswap-.L010pic(%ecx),%ecx
2194 pshufd $78,%xmm2,%xmm2
2195 pshufd $255,%xmm2,%xmm4
2207 pshufd $78,%xmm0,%xmm3
2208 pshufd $78,%xmm2,%xmm4
2211 .byte 102,15,58,68,194,0
2212 .byte 102,15,58,68,202,17
2213 .byte 102,15,58,68,220,0
2241 movdqu %xmm0,16(%edx)
2243 .size gcm_init_clmul,.-.L_gcm_init_clmul_begin
2244 .globl gcm_gmult_clmul
2245 .type gcm_gmult_clmul,@function
2248 .L_gcm_gmult_clmul_begin:
2254 leal .Lbswap-.L011pic(%ecx),%ecx
2258 .byte 102,15,56,0,197
2260 pshufd $78,%xmm0,%xmm3
2261 pshufd $78,%xmm2,%xmm4
2264 .byte 102,15,58,68,194,0
2265 .byte 102,15,58,68,202,17
2266 .byte 102,15,58,68,220,0
2293 .byte 102,15,56,0,197
2296 .size gcm_gmult_clmul,.-.L_gcm_gmult_clmul_begin
2297 .globl gcm_ghash_clmul
2298 .type gcm_ghash_clmul,@function
2301 .L_gcm_ghash_clmul_begin:
2313 leal .Lbswap-.L012pic(%ecx),%ecx
2317 .byte 102,15,56,0,197
2321 movdqu 16(%esi),%xmm6
2322 .byte 102,15,56,0,221
2323 .byte 102,15,56,0,245
2326 pshufd $78,%xmm6,%xmm3
2327 pshufd $78,%xmm2,%xmm4
2330 .byte 102,15,58,68,242,0
2331 .byte 102,15,58,68,250,17
2332 .byte 102,15,58,68,220,0
2340 movups 16(%edx),%xmm2
2346 pshufd $78,%xmm0,%xmm3
2347 pshufd $78,%xmm2,%xmm4
2350 .byte 102,15,58,68,194,0
2351 .byte 102,15,58,68,202,17
2352 .byte 102,15,58,68,220,0
2364 movdqu 16(%esi),%xmm6
2365 .byte 102,15,56,0,221
2366 .byte 102,15,56,0,245
2375 .byte 102,15,58,68,242,0
2381 pshufd $78,%xmm5,%xmm3
2384 pshufd $78,%xmm2,%xmm5
2386 .byte 102,15,58,68,250,17
2395 .byte 102,15,58,68,221,0
2396 movups 16(%edx),%xmm2
2410 pshufd $78,%xmm0,%xmm3
2411 pshufd $78,%xmm2,%xmm4
2414 .byte 102,15,58,68,194,0
2415 .byte 102,15,58,68,202,17
2416 .byte 102,15,58,68,220,0
2450 .byte 102,15,56,0,221
2453 pshufd $78,%xmm0,%xmm3
2454 pshufd $78,%xmm2,%xmm4
2457 .byte 102,15,58,68,194,0
2458 .byte 102,15,58,68,202,17
2459 .byte 102,15,58,68,220,0
2487 .byte 102,15,56,0,197
2494 .size gcm_ghash_clmul,.-.L_gcm_ghash_clmul_begin
2497 .byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
2498 .byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194
2501 .long 0,0,0,471859200,0,943718400,0,610271232
2502 .long 0,1887436800,0,1822425088,0,1220542464,0,1423966208
2503 .long 0,3774873600,0,4246732800,0,3644850176,0,3311403008
2504 .long 0,2441084928,0,2376073216,0,2847932416,0,3051356160
2507 .value 0,450,900,582,1800,1738,1164,1358
2508 .value 3600,4050,3476,3158,2328,2266,2716,2910
2509 .value 7200,7650,8100,7782,6952,6890,6316,6510
2510 .value 4656,5106,4532,4214,5432,5370,5820,6014
2511 .value 14400,14722,15300,14854,16200,16010,15564,15630
2512 .value 13904,14226,13780,13334,12632,12442,13020,13086
2513 .value 9312,9634,10212,9766,9064,8874,8428,8494
2514 .value 10864,11186,10740,10294,11640,11450,12028,12094
2515 .value 28800,28994,29444,29382,30600,30282,29708,30158
2516 .value 32400,32594,32020,31958,31128,30810,31260,31710
2517 .value 27808,28002,28452,28390,27560,27242,26668,27118
2518 .value 25264,25458,24884,24822,26040,25722,26172,26622
2519 .value 18624,18690,19268,19078,20424,19978,19532,19854
2520 .value 18128,18194,17748,17558,16856,16410,16988,17310
2521 .value 21728,21794,22372,22182,21480,21034,20588,20910
2522 .value 23280,23346,22900,22710,24056,23610,24188,24510
2523 .value 57600,57538,57988,58182,58888,59338,58764,58446
2524 .value 61200,61138,60564,60758,59416,59866,60316,59998
2525 .value 64800,64738,65188,65382,64040,64490,63916,63598
2526 .value 62256,62194,61620,61814,62520,62970,63420,63102
2527 .value 55616,55426,56004,56070,56904,57226,56780,56334
2528 .value 55120,54930,54484,54550,53336,53658,54236,53790
2529 .value 50528,50338,50916,50982,49768,50090,49644,49198
2530 .value 52080,51890,51444,51510,52344,52666,53244,52798
2531 .value 37248,36930,37380,37830,38536,38730,38156,38094
2532 .value 40848,40530,39956,40406,39064,39258,39708,39646
2533 .value 36256,35938,36388,36838,35496,35690,35116,35054
2534 .value 33712,33394,32820,33270,33976,34170,34620,34558
2535 .value 43456,43010,43588,43910,44744,44810,44364,44174
2536 .value 42960,42514,42068,42390,41176,41242,41820,41630
2537 .value 46560,46114,46692,47014,45800,45866,45420,45230
2538 .value 48112,47666,47220,47542,48376,48442,49020,48830
2539 .byte 71,72,65,83,72,32,102,111,114,32,120,56,54,44,32,67
2540 .byte 82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112
2541 .byte 112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62