2 /* Do not modify. This file is auto-generated from e_padlock-x86_64.pl. */
4 .globl padlock_capability
5 .type padlock_capability,@function
41 .size padlock_capability,.-padlock_capability
43 .globl padlock_key_bswap
44 .type padlock_key_bswap,@function
56 .size padlock_key_bswap,.-padlock_key_bswap
58 .globl padlock_verify_context
59 .type padlock_verify_context,@function
61 padlock_verify_context:
64 leaq .Lpadlock_saved_context(%rip),%rax
65 call _padlock_verify_ctx
68 .size padlock_verify_context,.-padlock_verify_context
70 .type _padlock_verify_ctx,@function
83 .size _padlock_verify_ctx,.-_padlock_verify_ctx
85 .globl padlock_reload_key
86 .type padlock_reload_key,@function
92 .size padlock_reload_key,.-padlock_reload_key
94 .globl padlock_aes_block
95 .type padlock_aes_block,@function
102 .byte 0xf3,0x0f,0xa7,0xc8
105 .size padlock_aes_block,.-padlock_aes_block
107 .globl padlock_xstore
108 .type padlock_xstore,@function
114 .size padlock_xstore,.-padlock_xstore
116 .globl padlock_sha1_oneshot
117 .type padlock_sha1_oneshot,@function
119 padlock_sha1_oneshot:
129 .byte 0xf3,0x0f,0xa6,0xc8
136 .size padlock_sha1_oneshot,.-padlock_sha1_oneshot
138 .globl padlock_sha1_blocks
139 .type padlock_sha1_blocks,@function
151 .byte 0xf3,0x0f,0xa6,0xc8
158 .size padlock_sha1_blocks,.-padlock_sha1_blocks
160 .globl padlock_sha256_oneshot
161 .type padlock_sha256_oneshot,@function
163 padlock_sha256_oneshot:
168 movups 16(%rdi),%xmm1
171 movaps %xmm1,16(%rsp)
173 .byte 0xf3,0x0f,0xa6,0xd0
175 movaps 16(%rsp),%xmm1
178 movups %xmm1,16(%rdx)
180 .size padlock_sha256_oneshot,.-padlock_sha256_oneshot
182 .globl padlock_sha256_blocks
183 .type padlock_sha256_blocks,@function
185 padlock_sha256_blocks:
190 movups 16(%rdi),%xmm1
193 movaps %xmm1,16(%rsp)
195 .byte 0xf3,0x0f,0xa6,0xd0
197 movaps 16(%rsp),%xmm1
200 movups %xmm1,16(%rdx)
202 .size padlock_sha256_blocks,.-padlock_sha256_blocks
204 .globl padlock_sha512_blocks
205 .type padlock_sha512_blocks,@function
207 padlock_sha512_blocks:
212 movups 16(%rdi),%xmm1
213 movups 32(%rdi),%xmm2
214 movups 48(%rdi),%xmm3
217 movaps %xmm1,16(%rsp)
218 movaps %xmm2,32(%rsp)
219 movaps %xmm3,48(%rsp)
220 .byte 0xf3,0x0f,0xa6,0xe0
222 movaps 16(%rsp),%xmm1
223 movaps 32(%rsp),%xmm2
224 movaps 48(%rsp),%xmm3
227 movups %xmm1,16(%rdx)
228 movups %xmm2,32(%rdx)
229 movups %xmm3,48(%rdx)
231 .size padlock_sha512_blocks,.-padlock_sha512_blocks
232 .globl padlock_ecb_encrypt
233 .type padlock_ecb_encrypt,@function
244 leaq .Lpadlock_saved_context(%rip),%rax
247 call _padlock_verify_ctx
269 leaq (%rax,%rbp,1),%rsp
284 jz .Lecb_unaligned_tail
308 .byte 0xf3,0x0f,0xa7,200
328 .Lecb_unaligned_tail:
361 leaq (%rsi,%rcx,1),%rbp
370 jz .Lecb_aligned_tail
374 .byte 0xf3,0x0f,0xa7,200
398 .size padlock_ecb_encrypt,.-padlock_ecb_encrypt
399 .globl padlock_cbc_encrypt
400 .type padlock_cbc_encrypt,@function
411 leaq .Lpadlock_saved_context(%rip),%rax
414 call _padlock_verify_ctx
436 leaq (%rax,%rbp,1),%rsp
451 jz .Lcbc_unaligned_tail
475 .byte 0xf3,0x0f,0xa7,208
477 movdqa %xmm0,-16(%rdx)
497 .Lcbc_unaligned_tail:
530 leaq (%rsi,%rcx,1),%rbp
539 jz .Lcbc_aligned_tail
543 .byte 0xf3,0x0f,0xa7,208
545 movdqa %xmm0,-16(%rdx)
569 .size padlock_cbc_encrypt,.-padlock_cbc_encrypt
570 .globl padlock_cfb_encrypt
571 .type padlock_cfb_encrypt,@function
582 leaq .Lpadlock_saved_context(%rip),%rax
585 call _padlock_verify_ctx
607 leaq (%rax,%rbp,1),%rsp
633 .byte 0xf3,0x0f,0xa7,224
635 movdqa %xmm0,-16(%rdx)
673 .byte 0xf3,0x0f,0xa7,224
675 movdqa %xmm0,-16(%rdx)
683 .size padlock_cfb_encrypt,.-padlock_cfb_encrypt
684 .globl padlock_ofb_encrypt
685 .type padlock_ofb_encrypt,@function
696 leaq .Lpadlock_saved_context(%rip),%rax
699 call _padlock_verify_ctx
721 leaq (%rax,%rbp,1),%rsp
747 .byte 0xf3,0x0f,0xa7,232
749 movdqa %xmm0,-16(%rdx)
787 .byte 0xf3,0x0f,0xa7,232
789 movdqa %xmm0,-16(%rdx)
797 .size padlock_ofb_encrypt,.-padlock_ofb_encrypt
798 .globl padlock_ctr32_encrypt
799 .type padlock_ctr32_encrypt,@function
801 padlock_ctr32_encrypt:
810 leaq .Lpadlock_saved_context(%rip),%rax
813 call _padlock_verify_ctx
835 leaq (%rax,%rbp,1),%rsp
861 jz .Lctr32_unaligned_tail
875 jz .Lctr32_inp_aligned
885 .byte 0xf3,0x0f,0xa7,216
887 testl $0xffff0000,%eax
897 jz .Lctr32_out_aligned
925 .Lctr32_unaligned_tail:
968 jbe .Lctr32_aligned_skip
970 .Lctr32_aligned_loop:
978 .byte 0xf3,0x0f,0xa7,216
991 jae .Lctr32_aligned_loop
993 .Lctr32_aligned_skip:
994 leaq (%rsi,%rcx,1),%rbp
1003 jz .Lctr32_aligned_tail
1007 .byte 0xf3,0x0f,0xa7,216
1011 .Lctr32_aligned_tail:
1019 .byte 0xf3,0x48,0xa5
1031 .size padlock_ctr32_encrypt,.-padlock_ctr32_encrypt
1032 .byte 86,73,65,32,80,97,100,108,111,99,107,32,120,56,54,95,54,52,32,109,111,100,117,108,101,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
1036 .Lpadlock_saved_context: