OLD | NEW |
1 #if defined(__i386__) | 1 #if defined(__i386__) |
2 .file "ghash-x86.S" | 2 .file "ghash-x86.S" |
3 .text | 3 .text |
4 .globl _gcm_gmult_4bit_x86 | 4 .globl _gcm_gmult_4bit_x86 |
| 5 .private_extern _gcm_gmult_4bit_x86 |
5 .align 4 | 6 .align 4 |
6 _gcm_gmult_4bit_x86: | 7 _gcm_gmult_4bit_x86: |
7 L_gcm_gmult_4bit_x86_begin: | 8 L_gcm_gmult_4bit_x86_begin: |
8 pushl %ebp | 9 pushl %ebp |
9 pushl %ebx | 10 pushl %ebx |
10 pushl %esi | 11 pushl %esi |
11 pushl %edi | 12 pushl %edi |
12 subl $84,%esp | 13 subl $84,%esp |
13 movl 104(%esp),%edi | 14 movl 104(%esp),%edi |
14 movl 108(%esp),%esi | 15 movl 108(%esp),%esi |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 movl %ecx,8(%edi) | 88 movl %ecx,8(%edi) |
88 movl %edx,4(%edi) | 89 movl %edx,4(%edi) |
89 movl %ebp,(%edi) | 90 movl %ebp,(%edi) |
90 addl $84,%esp | 91 addl $84,%esp |
91 popl %edi | 92 popl %edi |
92 popl %esi | 93 popl %esi |
93 popl %ebx | 94 popl %ebx |
94 popl %ebp | 95 popl %ebp |
95 ret | 96 ret |
96 .globl _gcm_ghash_4bit_x86 | 97 .globl _gcm_ghash_4bit_x86 |
| 98 .private_extern _gcm_ghash_4bit_x86 |
97 .align 4 | 99 .align 4 |
98 _gcm_ghash_4bit_x86: | 100 _gcm_ghash_4bit_x86: |
99 L_gcm_ghash_4bit_x86_begin: | 101 L_gcm_ghash_4bit_x86_begin: |
100 pushl %ebp | 102 pushl %ebp |
101 pushl %ebx | 103 pushl %ebx |
102 pushl %esi | 104 pushl %esi |
103 pushl %edi | 105 pushl %edi |
104 subl $84,%esp | 106 subl $84,%esp |
105 movl 104(%esp),%ebx | 107 movl 104(%esp),%ebx |
106 movl 108(%esp),%esi | 108 movl 108(%esp),%esi |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
194 movl %ecx,8(%edi) | 196 movl %ecx,8(%edi) |
195 movl %edx,4(%edi) | 197 movl %edx,4(%edi) |
196 movl %ebp,(%edi) | 198 movl %ebp,(%edi) |
197 addl $84,%esp | 199 addl $84,%esp |
198 popl %edi | 200 popl %edi |
199 popl %esi | 201 popl %esi |
200 popl %ebx | 202 popl %ebx |
201 popl %ebp | 203 popl %ebp |
202 ret | 204 ret |
203 .globl _gcm_gmult_4bit_mmx | 205 .globl _gcm_gmult_4bit_mmx |
| 206 .private_extern _gcm_gmult_4bit_mmx |
204 .align 4 | 207 .align 4 |
205 _gcm_gmult_4bit_mmx: | 208 _gcm_gmult_4bit_mmx: |
206 L_gcm_gmult_4bit_mmx_begin: | 209 L_gcm_gmult_4bit_mmx_begin: |
207 pushl %ebp | 210 pushl %ebp |
208 pushl %ebx | 211 pushl %ebx |
209 pushl %esi | 212 pushl %esi |
210 pushl %edi | 213 pushl %edi |
211 movl 20(%esp),%edi | 214 movl 20(%esp),%edi |
212 movl 24(%esp),%esi | 215 movl 24(%esp),%esi |
213 call L005pic_point | 216 call L005pic_point |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
291 movl %ebx,12(%edi) | 294 movl %ebx,12(%edi) |
292 movl %edx,4(%edi) | 295 movl %edx,4(%edi) |
293 movl %ecx,8(%edi) | 296 movl %ecx,8(%edi) |
294 movl %ebp,(%edi) | 297 movl %ebp,(%edi) |
295 popl %edi | 298 popl %edi |
296 popl %esi | 299 popl %esi |
297 popl %ebx | 300 popl %ebx |
298 popl %ebp | 301 popl %ebp |
299 ret | 302 ret |
300 .globl _gcm_ghash_4bit_mmx | 303 .globl _gcm_ghash_4bit_mmx |
| 304 .private_extern _gcm_ghash_4bit_mmx |
301 .align 4 | 305 .align 4 |
302 _gcm_ghash_4bit_mmx: | 306 _gcm_ghash_4bit_mmx: |
303 L_gcm_ghash_4bit_mmx_begin: | 307 L_gcm_ghash_4bit_mmx_begin: |
304 pushl %ebp | 308 pushl %ebp |
305 pushl %ebx | 309 pushl %ebx |
306 pushl %esi | 310 pushl %esi |
307 pushl %edi | 311 pushl %edi |
308 movl 20(%esp),%eax | 312 movl 20(%esp),%eax |
309 movl 24(%esp),%ebx | 313 movl 24(%esp),%ebx |
310 movl 28(%esp),%ecx | 314 movl 28(%esp),%ecx |
(...skipping 582 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
893 movl %ebx,8(%eax) | 897 movl %ebx,8(%eax) |
894 movq %mm6,(%eax) | 898 movq %mm6,(%eax) |
895 movl 556(%esp),%esp | 899 movl 556(%esp),%esp |
896 emms | 900 emms |
897 popl %edi | 901 popl %edi |
898 popl %esi | 902 popl %esi |
899 popl %ebx | 903 popl %ebx |
900 popl %ebp | 904 popl %ebp |
901 ret | 905 ret |
902 .globl _gcm_init_clmul | 906 .globl _gcm_init_clmul |
| 907 .private_extern _gcm_init_clmul |
903 .align 4 | 908 .align 4 |
904 _gcm_init_clmul: | 909 _gcm_init_clmul: |
905 L_gcm_init_clmul_begin: | 910 L_gcm_init_clmul_begin: |
906 movl 4(%esp),%edx | 911 movl 4(%esp),%edx |
907 movl 8(%esp),%eax | 912 movl 8(%esp),%eax |
908 call L010pic | 913 call L010pic |
909 L010pic: | 914 L010pic: |
910 popl %ecx | 915 popl %ecx |
911 leal Lbswap-L010pic(%ecx),%ecx | 916 leal Lbswap-L010pic(%ecx),%ecx |
912 movdqu (%eax),%xmm2 | 917 movdqu (%eax),%xmm2 |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
960 pshufd $78,%xmm2,%xmm3 | 965 pshufd $78,%xmm2,%xmm3 |
961 pshufd $78,%xmm0,%xmm4 | 966 pshufd $78,%xmm0,%xmm4 |
962 pxor %xmm2,%xmm3 | 967 pxor %xmm2,%xmm3 |
963 movdqu %xmm2,(%edx) | 968 movdqu %xmm2,(%edx) |
964 pxor %xmm0,%xmm4 | 969 pxor %xmm0,%xmm4 |
965 movdqu %xmm0,16(%edx) | 970 movdqu %xmm0,16(%edx) |
966 .byte 102,15,58,15,227,8 | 971 .byte 102,15,58,15,227,8 |
967 movdqu %xmm4,32(%edx) | 972 movdqu %xmm4,32(%edx) |
968 ret | 973 ret |
969 .globl _gcm_gmult_clmul | 974 .globl _gcm_gmult_clmul |
| 975 .private_extern _gcm_gmult_clmul |
970 .align 4 | 976 .align 4 |
971 _gcm_gmult_clmul: | 977 _gcm_gmult_clmul: |
972 L_gcm_gmult_clmul_begin: | 978 L_gcm_gmult_clmul_begin: |
973 movl 4(%esp),%eax | 979 movl 4(%esp),%eax |
974 movl 8(%esp),%edx | 980 movl 8(%esp),%edx |
975 call L011pic | 981 call L011pic |
976 L011pic: | 982 L011pic: |
977 popl %ecx | 983 popl %ecx |
978 leal Lbswap-L011pic(%ecx),%ecx | 984 leal Lbswap-L011pic(%ecx),%ecx |
979 movdqu (%eax),%xmm0 | 985 movdqu (%eax),%xmm0 |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1011 pxor %xmm4,%xmm1 | 1017 pxor %xmm4,%xmm1 |
1012 pxor %xmm0,%xmm4 | 1018 pxor %xmm0,%xmm4 |
1013 psrlq $5,%xmm0 | 1019 psrlq $5,%xmm0 |
1014 pxor %xmm4,%xmm0 | 1020 pxor %xmm4,%xmm0 |
1015 psrlq $1,%xmm0 | 1021 psrlq $1,%xmm0 |
1016 pxor %xmm1,%xmm0 | 1022 pxor %xmm1,%xmm0 |
1017 .byte 102,15,56,0,197 | 1023 .byte 102,15,56,0,197 |
1018 movdqu %xmm0,(%eax) | 1024 movdqu %xmm0,(%eax) |
1019 ret | 1025 ret |
1020 .globl _gcm_ghash_clmul | 1026 .globl _gcm_ghash_clmul |
| 1027 .private_extern _gcm_ghash_clmul |
1021 .align 4 | 1028 .align 4 |
1022 _gcm_ghash_clmul: | 1029 _gcm_ghash_clmul: |
1023 L_gcm_ghash_clmul_begin: | 1030 L_gcm_ghash_clmul_begin: |
1024 pushl %ebp | 1031 pushl %ebp |
1025 pushl %ebx | 1032 pushl %ebx |
1026 pushl %esi | 1033 pushl %esi |
1027 pushl %edi | 1034 pushl %edi |
1028 movl 20(%esp),%eax | 1035 movl 20(%esp),%eax |
1029 movl 24(%esp),%edx | 1036 movl 24(%esp),%edx |
1030 movl 28(%esp),%esi | 1037 movl 28(%esp),%esi |
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1244 Lrem_4bit: | 1251 Lrem_4bit: |
1245 .long 0,0,0,471859200,0,943718400,0,610271232 | 1252 .long 0,0,0,471859200,0,943718400,0,610271232 |
1246 .long 0,1887436800,0,1822425088,0,1220542464,0,1423966208 | 1253 .long 0,1887436800,0,1822425088,0,1220542464,0,1423966208 |
1247 .long 0,3774873600,0,4246732800,0,3644850176,0,3311403008 | 1254 .long 0,3774873600,0,4246732800,0,3644850176,0,3311403008 |
1248 .long 0,2441084928,0,2376073216,0,2847932416,0,3051356160 | 1255 .long 0,2441084928,0,2376073216,0,2847932416,0,3051356160 |
1249 .byte 71,72,65,83,72,32,102,111,114,32,120,56,54,44,32,67 | 1256 .byte 71,72,65,83,72,32,102,111,114,32,120,56,54,44,32,67 |
1250 .byte 82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112 | 1257 .byte 82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112 |
1251 .byte 112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62 | 1258 .byte 112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62 |
1252 .byte 0 | 1259 .byte 0 |
1253 #endif | 1260 #endif |
OLD | NEW |