@ -3,7 +3,6 @@
# if ! d e f i n e d ( O P E N S S L _ N O _ A S M ) & & d e f i n e d ( O P E N S S L _ X 8 6 _ 6 4 ) & & \
( defined( _ _ A P P L E _ _ ) | | d e f i n e d ( _ _ E L F _ _ ) )
.intel_syntax noprefix
.text
# if d e f i n e d ( _ _ A P P L E _ _ )
.private_extern _fiat_p256_adx_mul
@ -18,158 +17,158 @@ fiat_p256_adx_mul:
.cfi_startproc
_ CET_ E N D B R
push r b p
.cfi_adjust_cfa_offset 8
pushq % r b p
;.cfi_adjust_cfa_offset 8
.cfi_offset rbp, - 1 6
mov r b p , r s p
mov r a x , r d x
mov r d x , [ r s i + 0 x0 ]
test a l , a l
mulx r8 , r c x , [ r a x + 0 x0 ]
mov [ r s p - 0 x80 ] , r b x
movq % r s p , % r b p
movq % r d x , % r a x
movq ( % r s i ) , % r d x
testb % a l , % a l
mulxq ( % r a x ) , % r c x , % r8
movq % r b x , - 0 x80 ( % r s p )
.cfi_offset rbx, - 1 6 - 0 x80
mulx r b x , r9 , [ r a x + 0 x8 ]
mov [ r s p - 0 x68 ] , r14
mulxq 0 x8 ( % r a x ) , % r9 , % r b x
movq % r14 , - 0 x68 ( % r s p )
.cfi_offset r1 4 , - 1 6 - 0 x68
adc r9 , r8
mov [ r s p - 0 x60 ] , r15
adcq % r8 , % r9
movq % r15 , - 0 x60 ( % r s p )
.cfi_offset r1 5 , - 1 6 - 0 x60
mulx r15 , r14 , [ r a x + 0 x10 ]
mov [ r s p - 0 x78 ] , r12
mulxq 0 x10 ( % r a x ) , % r14 , % r15
movq % r12 , - 0 x78 ( % r s p )
.cfi_offset r1 2 , - 1 6 - 0 x78
adc r14 , r b x
mulx r11 , r10 , [ r a x + 0 x18 ]
mov [ r s p - 0 x70 ] , r13
adcq % r b x , % r14
mulxq 0 x18 ( % r a x ) , % r10 , % r11
movq % r13 , - 0 x70 ( % r s p )
.cfi_offset r1 3 , - 1 6 - 0 x70
adc r10 , r15
mov r d x , [ r s i + 0 x8 ]
mulx r b x , r8 , [ r a x + 0 x0 ]
adc r11 , 0 x0
xor r15 , r15
adcx r8 , r9
adox r b x , r14
mov [ r s p - 0 x58 ] , r d i
mulx r d i , r9 , [ r a x + 0 x8 ]
adcx r9 , r b x
adox r d i , r10
mulx r b x , r14 , [ r a x + 0 x10 ]
adcx r14 , r d i
adox r b x , r11
mulx r13 , r12 , [ r a x + 0 x18 ]
adcx r12 , r b x
mov r d x , 0 x10 0 0 0 0 0 0 0
mulx r11 , r10 , r c x
adox r13 , r15
adcx r13 , r15
xor r d i , r d i
adox r10 , r8
mulx r8 , r b x , r10
adox r11 , r9
adcx r b x , r11
adox r8 , r14
mov r d x , 0 x f f f f f f f f00 0 0 0 0 0 1
mulx r9 , r15 , r c x
adcx r15 , r8
adox r9 , r12
mulx r14 , r c x , r10
mov r d x , [ r s i + 0 x10 ]
mulx r10 , r12 , [ r a x + 0 x8 ]
adcx r c x , r9
adox r14 , r13
mulx r11 , r13 , [ r a x + 0 x0 ]
mov r9 , r d i
adcx r14 , r9
adox r d i , r d i
adc r d i , 0 x0
xor r9 , r9
adcx r13 , r b x
adox r11 , r15
mov r d x , [ r s i + 0 x10 ]
mulx r15 , r8 , [ r a x + 0 x10 ]
adox r10 , r c x
mulx r c x , r b x , [ r a x + 0 x18 ]
mov r d x , [ r s i + 0 x18 ]
adcx r12 , r11
mulx r s i , r11 , [ r a x + 0 x8 ]
adcx r8 , r10
adox r15 , r14
adcx r b x , r15
adox r c x , r9
adcx r c x , r9
mulx r15 , r10 , [ r a x + 0 x0 ]
add r c x , r d i
mov r14 , r9
adc r14 , 0
xor r9 , r9
adcx r10 , r12
adox r15 , r8
adcx r11 , r15
adox r s i , r b x
mulx r8 , r12 , [ r a x + 0 x10 ]
adox r8 , r c x
mulx r c x , r b x , [ r a x + 0 x18 ]
adcx r12 , r s i
adox r c x , r9
mov r d x , 0 x10 0 0 0 0 0 0 0
adcx r b x , r8
adc r c x , 0
mulx r d i , r15 , r13
xor r a x , r a x
adcx r c x , r14
adc r a x , 0
xor r9 , r9
adox r15 , r10
mulx r14 , r10 , r15
adox r d i , r11
mov r d x , 0 x f f f f f f f f00 0 0 0 0 0 1
adox r14 , r12
adcx r10 , r d i
mulx r12 , r11 , r13
adcx r11 , r14
adox r12 , r b x
mulx r b x , r13 , r15
adcx r13 , r12
adox r b x , r c x
mov r8 , r9
adox r a x , r9
adcx r8 , r b x
adc r a x , 0 x0
mov r c x , r a x
mov r15 , 0 x f f f f f f f f f f f f f f f f
mov r d i , r10
sub r d i , r15
mov r14 , 0 x f f f f f f f f
mov r12 , r11
sbb r12 , r14
mov r b x , r13
sbb r b x , r9
mov r a x , r a x
mov r a x , r8
sbb r a x , r d x
sbb r c x , r9
cmovc r d i , r10
mov r10 , [ r s p - 0 x58 ]
cmovc r b x , r13
mov r13 , [ r s p - 0 x70 ]
adcq % r15 , % r10
movq 0 x8 ( % r s i ) , % r d x
mulxq ( % r a x ) , % r8 , % r b x
adcq $ 0 x0 , % r11
xorq % r15 , % r15
adcxq % r9 , % r8
adoxq % r14 , % r b x
movq % r d i , - 0 x58 ( % r s p )
mulxq 0 x8 ( % r a x ) , % r9 , % r d i
adcxq % r b x , % r9
adoxq % r10 , % r d i
mulxq 0 x10 ( % r a x ) , % r14 , % r b x
adcxq % r d i , % r14
adoxq % r11 , % r b x
mulxq 0 x18 ( % r a x ) , % r12 , % r13
adcxq % r b x , % r12
movq $ 0 x10 0 0 0 0 0 0 0 , % r d x
mulxq % r c x , % r10 , % r11
adoxq % r15 , % r13
adcxq % r15 , % r13
xorq % r d i , % r d i
adoxq % r8 , % r10
mulxq % r10 , % r b x , % r8
adoxq % r9 , % r11
adcxq % r11 , % r b x
adoxq % r14 , % r8
movq $ 0 x f f f f f f f f00 0 0 0 0 0 1 , % r d x
mulxq % r c x , % r15 , % r9
adcxq % r8 , % r15
adoxq % r12 , % r9
mulxq % r10 , % r c x , % r14
movq 0 x10 ( % r s i ) , % r d x
mulxq 0 x8 ( % r a x ) , % r12 , % r10
adcxq % r9 , % r c x
adoxq % r13 , % r14
mulxq ( % r a x ) , % r13 , % r11
movq % r d i , % r9
adcxq % r9 , % r14
adoxq % r d i , % r d i
adcq $ 0 x0 , % r d i
xorq % r9 , % r9
adcxq % r b x , % r13
adoxq % r15 , % r11
movq 0 x10 ( % r s i ) , % r d x
mulxq 0 x10 ( % r a x ) , % r8 , % r15
adoxq % r c x , % r10
mulxq 0 x18 ( % r a x ) , % r b x , % r c x
movq 0 x18 ( % r s i ) , % r d x
adcxq % r11 , % r12
mulxq 0 x8 ( % r a x ) , % r11 , % r s i
adcxq % r10 , % r8
adoxq % r14 , % r15
adcxq % r15 , % r b x
adoxq % r9 , % r c x
adcxq % r9 , % r c x
mulxq ( % r a x ) , % r10 , % r15
addq % r d i , % r c x
movq % r9 , % r14
adcq $ 0 x0 , % r14
xorq % r9 , % r9
adcxq % r12 , % r10
adoxq % r8 , % r15
adcxq % r15 , % r11
adoxq % r b x , % r s i
mulxq 0 x10 ( % r a x ) , % r12 , % r8
adoxq % r c x , % r8
mulxq 0 x18 ( % r a x ) , % r b x , % r c x
adcxq % r s i , % r12
adoxq % r9 , % r c x
movq $ 0 x10 0 0 0 0 0 0 0 , % r d x
adcxq % r8 , % r b x
adcq $ 0 x0 , % r c x
mulxq % r13 , % r15 , % r d i
xorq % r a x , % r a x
adcxq % r14 , % r c x
adcq $ 0 x0 , % r a x
xorq % r9 , % r9
adoxq % r10 , % r15
mulxq % r15 , % r10 , % r14
adoxq % r11 , % r d i
movq $ 0 x f f f f f f f f00 0 0 0 0 0 1 , % r d x
adoxq % r12 , % r14
adcxq % r d i , % r10
mulxq % r13 , % r11 , % r12
adcxq % r14 , % r11
adoxq % r b x , % r12
mulxq % r15 , % r13 , % r b x
adcxq % r12 , % r13
adoxq % r c x , % r b x
movq % r9 , % r8
adoxq % r9 , % r a x
adcxq % r b x , % r8
adcq $ 0 x0 , % r a x
movq % r a x , % r c x
movq $ 0 x f f f f f f f f f f f f f f f f , % r15
movq % r10 , % r d i
subq % r15 , % r d i
movq $ 0 x f f f f f f f f , % r14
movq % r11 , % r12
sbbq % r14 , % r12
movq % r13 , % r b x
sbbq % r9 , % r b x
movq % r a x , % r a x
movq % r8 , % r a x
sbbq % r d x , % r a x
sbbq % r9 , % r c x
cmovcq % r10 , % r d i
movq - 0 x58 ( % r s p ) , % r10
cmovcq % r13 , % r b x
movq - 0 x70 ( % r s p ) , % r13
.cfi_restore r13
cmovc r12 , r11
cmovc r a x , r8
mov [ r10 + 0 x10 ] , r b x
mov r b x , [ r s p - 0 x80 ]
cmovcq % r11 , % r12
cmovcq % r8 , % r a x
movq % r b x , 0 x10 ( % r10 )
movq - 0 x80 ( % r s p ) , % r b x
.cfi_restore rbx
mov [ r10 + 0 x0 ] , r d i
mov [ r10 + 0 x8 ] , r12
mov [ r10 + 0 x18 ] , r a x
mov r12 , [ r s p - 0 x78 ]
movq % r d i , ( % r10 )
movq % r12 , 0 x8 ( % r10 )
movq % r a x , 0 x18 ( % r10 )
movq - 0 x78 ( % r s p ) , % r12
.cfi_restore r12
mov r14 , [ r s p - 0 x68 ]
movq - 0 x68 ( % r s p ) , % r14
.cfi_restore r14
mov r15 , [ r s p - 0 x60 ]
movq - 0 x60 ( % r s p ) , % r15
.cfi_restore r15
pop r b p
popq % r b p
.cfi_restore rbp
.cfi_adjust_cfa_offset - 8
ret
retq
.cfi_endproc
# if d e f i n e d ( _ _ E L F _ _ )
.size fiat_ p25 6 _ a d x _ m u l , . - f i a t _ p25 6 _ a d x _ m u l