@@ -2048,185 +2048,6 @@ __bn_post4x_internal:
20482048 .byte 0xf3 ,0xc3
20492049.cfi_endproc
20502050.size __bn_post4x_internal,.-__bn_post4x_internal
2051- .globl bn_from_montgomery
2052- .type bn_from_montgomery,@function
2053- .align 32
2054- bn_from_montgomery:
2055- .cfi_startproc
2056- testl $7 ,%r9d
2057- jz bn_from_mont8x
2058- xorl %eax ,%eax
2059- .byte 0xf3 ,0xc3
2060- .cfi_endproc
2061- .size bn_from_montgomery,.-bn_from_montgomery
2062-
2063- .type bn_from_mont8x,@function
2064- .align 32
2065- bn_from_mont8x:
2066- .cfi_startproc
2067- .byte 0x67
2068- movq %rsp ,%rax
2069- .cfi_def_cfa_register %rax
2070- pushq %rbx
2071- .cfi_offset %rbx ,-16
2072- pushq %rbp
2073- .cfi_offset %rbp ,-24
2074- pushq %r12
2075- .cfi_offset %r12 ,-32
2076- pushq %r13
2077- .cfi_offset %r13 ,-40
2078- pushq %r14
2079- .cfi_offset %r14 ,-48
2080- pushq %r15
2081- .cfi_offset %r15 ,-56
2082- .Lfrom_prologue:
2083-
2084- shll $3 ,%r9d
2085- leaq (%r9 ,%r9 ,2 ),%r10
2086- negq %r9
2087- movq (%r8 ),%r8
2088-
2089-
2090-
2091-
2092-
2093-
2094-
2095-
2096- leaq -320 (%rsp ,%r9 ,2 ),%r11
2097- movq %rsp ,%rbp
2098- subq %rdi ,%r11
2099- andq $4095 ,%r11
2100- cmpq %r11 ,%r10
2101- jb .Lfrom_sp_alt
2102- subq %r11 ,%rbp
2103- leaq -320 (%rbp ,%r9 ,2 ),%rbp
2104- jmp .Lfrom_sp_done
2105-
2106- .align 32
2107- .Lfrom_sp_alt:
2108- leaq 4096 -320 (,%r9 ,2 ),%r10
2109- leaq -320 (%rbp ,%r9 ,2 ),%rbp
2110- subq %r10 ,%r11
2111- movq $0 ,%r10
2112- cmovcq %r10 ,%r11
2113- subq %r11 ,%rbp
2114- .Lfrom_sp_done:
2115- andq $-64 ,%rbp
2116- movq %rsp ,%r11
2117- subq %rbp ,%r11
2118- andq $-4096 ,%r11
2119- leaq (%r11 ,%rbp ,1 ),%rsp
2120- movq (%rsp ),%r10
2121- cmpq %rbp ,%rsp
2122- ja .Lfrom_page_walk
2123- jmp .Lfrom_page_walk_done
2124-
2125- .Lfrom_page_walk:
2126- leaq -4096 (%rsp ),%rsp
2127- movq (%rsp ),%r10
2128- cmpq %rbp ,%rsp
2129- ja .Lfrom_page_walk
2130- .Lfrom_page_walk_done:
2131-
2132- movq %r9 ,%r10
2133- negq %r9
2134-
2135-
2136-
2137-
2138-
2139-
2140-
2141-
2142-
2143-
2144- movq %r8 ,32 (%rsp )
2145- movq %rax ,40 (%rsp )
2146- .cfi_escape 0x0f ,0x05 ,0x77 ,0x28 ,0x06 ,0x23 ,0x08
2147- .Lfrom_body:
2148- movq %r9 ,%r11
2149- leaq 48 (%rsp ),%rax
2150- pxor %xmm0 ,%xmm0
2151- jmp .Lmul_by_1
2152-
2153- .align 32
2154- .Lmul_by_1:
2155- movdqu (%rsi ),%xmm1
2156- movdqu 16 (%rsi ),%xmm2
2157- movdqu 32 (%rsi ),%xmm3
2158- movdqa %xmm0 ,(%rax ,%r9 ,1 )
2159- movdqu 48 (%rsi ),%xmm4
2160- movdqa %xmm0 ,16 (%rax ,%r9 ,1 )
2161- .byte 0x48 ,0x8d ,0xb6 ,0x40 ,0x00 ,0x00 ,0x00
2162- movdqa %xmm1 ,(%rax )
2163- movdqa %xmm0 ,32 (%rax ,%r9 ,1 )
2164- movdqa %xmm2 ,16 (%rax )
2165- movdqa %xmm0 ,48 (%rax ,%r9 ,1 )
2166- movdqa %xmm3 ,32 (%rax )
2167- movdqa %xmm4 ,48 (%rax )
2168- leaq 64 (%rax ),%rax
2169- subq $64 ,%r11
2170- jnz .Lmul_by_1
2171-
2172- .byte 102 ,72 ,15 ,110 ,207
2173- .byte 102 ,72 ,15 ,110 ,209
2174- .byte 0x67
2175- movq %rcx ,%rbp
2176- .byte 102 ,73 ,15 ,110 ,218
2177- movl OPENSSL_ia32cap_P+8 (%rip ),%r11d
2178- andl $0x80108 ,%r11d
2179- cmpl $0x80108 ,%r11d
2180- jne .Lfrom_mont_nox
2181-
2182- leaq (%rax ,%r9 ,1 ),%rdi
2183- call __bn_sqrx8x_reduction
2184- call __bn_postx4x_internal
2185-
2186- pxor %xmm0 ,%xmm0
2187- leaq 48 (%rsp ),%rax
2188- jmp .Lfrom_mont_zero
2189-
2190- .align 32
2191- .Lfrom_mont_nox:
2192- call __bn_sqr8x_reduction
2193- call __bn_post4x_internal
2194-
2195- pxor %xmm0 ,%xmm0
2196- leaq 48 (%rsp ),%rax
2197- jmp .Lfrom_mont_zero
2198-
2199- .align 32
2200- .Lfrom_mont_zero:
2201- movq 40 (%rsp ),%rsi
2202- .cfi_def_cfa %rsi ,8
2203- movdqa %xmm0 ,0 (%rax )
2204- movdqa %xmm0 ,16 (%rax )
2205- movdqa %xmm0 ,32 (%rax )
2206- movdqa %xmm0 ,48 (%rax )
2207- leaq 64 (%rax ),%rax
2208- subq $32 ,%r9
2209- jnz .Lfrom_mont_zero
2210-
2211- movq $1 ,%rax
2212- movq -48 (%rsi ),%r15
2213- .cfi_restore %r15
2214- movq -40 (%rsi ),%r14
2215- .cfi_restore %r14
2216- movq -32 (%rsi ),%r13
2217- .cfi_restore %r13
2218- movq -24 (%rsi ),%r12
2219- .cfi_restore %r12
2220- movq -16 (%rsi ),%rbp
2221- .cfi_restore %rbp
2222- movq -8 (%rsi ),%rbx
2223- .cfi_restore %rbx
2224- leaq (%rsi ),%rsp
2225- .cfi_def_cfa_register %rsp
2226- .Lfrom_epilogue:
2227- .byte 0xf3 ,0xc3
2228- .cfi_endproc
2229- .size bn_from_mont8x,.-bn_from_mont8x
22302051.type bn_mulx4x_mont_gather5,@function
22312052.align 32
22322053bn_mulx4x_mont_gather5:
0 commit comments