Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Unified Diff: third_party/boringssl/win-x86_64/crypto/bn/modexp512-x86_64.asm

Issue 693893006: Roll BoringSSL. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@nasm
Patch Set: roll further Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/boringssl/win-x86_64/crypto/bn/modexp512-x86_64.asm
diff --git a/third_party/boringssl/win-x86_64/crypto/bn/modexp512-x86_64.asm b/third_party/boringssl/win-x86_64/crypto/bn/modexp512-x86_64.asm
index d3e4a618f94af8c49319bdaa73f6eba934ede1f6..f3b306ef6338ab187d33066f58db9c6fa8c33d3e 100644
--- a/third_party/boringssl/win-x86_64/crypto/bn/modexp512-x86_64.asm
+++ b/third_party/boringssl/win-x86_64/crypto/bn/modexp512-x86_64.asm
@@ -1,17 +1,21 @@
-OPTION DOTNAME
-.text$ SEGMENT ALIGN(256) 'CODE'
+default rel
+%define XMMWORD
+%define YMMWORD
+%define ZMMWORD
+section .text code align=64
+
ALIGN 16
-MULADD_128x512 PROC PRIVATE
- mov rax,QWORD PTR[rsi]
+MULADD_128x512:
+ mov rax,QWORD[rsi]
mul rbp
add r8,rax
adc rdx,0
- mov QWORD PTR[rcx],r8
+ mov QWORD[rcx],r8
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r9,rax
adc rdx,0
@@ -19,7 +23,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r10,rax
adc rdx,0
@@ -27,7 +31,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r11,rax
adc rdx,0
@@ -35,7 +39,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r12,rax
adc rdx,0
@@ -43,7 +47,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r13,rax
adc rdx,0
@@ -51,7 +55,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r14,rax
adc rdx,0
@@ -59,22 +63,22 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r15,rax
adc rdx,0
add r15,rbx
adc rdx,0
mov r8,rdx
- mov rbp,QWORD PTR[8+rdi]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[8+rdi]
+ mov rax,QWORD[rsi]
mul rbp
add r9,rax
adc rdx,0
- mov QWORD PTR[8+rcx],r9
+ mov QWORD[8+rcx],r9
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r10,rax
adc rdx,0
@@ -82,7 +86,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r11,rax
adc rdx,0
@@ -90,7 +94,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r12,rax
adc rdx,0
@@ -98,7 +102,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r13,rax
adc rdx,0
@@ -106,7 +110,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r14,rax
adc rdx,0
@@ -114,7 +118,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r15,rax
adc rdx,0
@@ -122,7 +126,7 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r8,rax
adc rdx,0
@@ -130,95 +134,95 @@ MULADD_128x512 PROC PRIVATE
adc rdx,0
mov r9,rdx
DB 0F3h,0C3h ;repret
-MULADD_128x512 ENDP
+
ALIGN 16
-mont_reduce PROC PRIVATE
- lea rdi,QWORD PTR[192+rsp]
- mov rsi,QWORD PTR[32+rsp]
+mont_reduce:
+ lea rdi,[192+rsp]
+ mov rsi,QWORD[32+rsp]
add rsi,576
- lea rcx,QWORD PTR[520+rsp]
+ lea rcx,[520+rsp]
- mov rbp,QWORD PTR[96+rcx]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[96+rcx]
+ mov rax,QWORD[rsi]
mul rbp
- mov r8,QWORD PTR[rcx]
+ mov r8,QWORD[rcx]
add r8,rax
adc rdx,0
- mov QWORD PTR[rdi],r8
+ mov QWORD[rdi],r8
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
- mov r9,QWORD PTR[8+rcx]
+ mov r9,QWORD[8+rcx]
add r9,rax
adc rdx,0
add r9,rbx
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
- mov r10,QWORD PTR[16+rcx]
+ mov r10,QWORD[16+rcx]
add r10,rax
adc rdx,0
add r10,rbx
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
- mov r11,QWORD PTR[24+rcx]
+ mov r11,QWORD[24+rcx]
add r11,rax
adc rdx,0
add r11,rbx
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
- mov r12,QWORD PTR[32+rcx]
+ mov r12,QWORD[32+rcx]
add r12,rax
adc rdx,0
add r12,rbx
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
- mov r13,QWORD PTR[40+rcx]
+ mov r13,QWORD[40+rcx]
add r13,rax
adc rdx,0
add r13,rbx
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
- mov r14,QWORD PTR[48+rcx]
+ mov r14,QWORD[48+rcx]
add r14,rax
adc rdx,0
add r14,rbx
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
- mov r15,QWORD PTR[56+rcx]
+ mov r15,QWORD[56+rcx]
add r15,rax
adc rdx,0
add r15,rbx
adc rdx,0
mov r8,rdx
- mov rbp,QWORD PTR[104+rcx]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[104+rcx]
+ mov rax,QWORD[rsi]
mul rbp
add r9,rax
adc rdx,0
- mov QWORD PTR[8+rdi],r9
+ mov QWORD[8+rdi],r9
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r10,rax
adc rdx,0
@@ -226,7 +230,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r11,rax
adc rdx,0
@@ -234,7 +238,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r12,rax
adc rdx,0
@@ -242,7 +246,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r13,rax
adc rdx,0
@@ -250,7 +254,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r14,rax
adc rdx,0
@@ -258,7 +262,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r15,rax
adc rdx,0
@@ -266,22 +270,22 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r8,rax
adc rdx,0
add r8,rbx
adc rdx,0
mov r9,rdx
- mov rbp,QWORD PTR[112+rcx]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[112+rcx]
+ mov rax,QWORD[rsi]
mul rbp
add r10,rax
adc rdx,0
- mov QWORD PTR[16+rdi],r10
+ mov QWORD[16+rdi],r10
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r11,rax
adc rdx,0
@@ -289,7 +293,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r12,rax
adc rdx,0
@@ -297,7 +301,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r13,rax
adc rdx,0
@@ -305,7 +309,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r14,rax
adc rdx,0
@@ -313,7 +317,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r15,rax
adc rdx,0
@@ -321,7 +325,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r8,rax
adc rdx,0
@@ -329,22 +333,22 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r9,rax
adc rdx,0
add r9,rbx
adc rdx,0
mov r10,rdx
- mov rbp,QWORD PTR[120+rcx]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[120+rcx]
+ mov rax,QWORD[rsi]
mul rbp
add r11,rax
adc rdx,0
- mov QWORD PTR[24+rdi],r11
+ mov QWORD[24+rdi],r11
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r12,rax
adc rdx,0
@@ -352,7 +356,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r13,rax
adc rdx,0
@@ -360,7 +364,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r14,rax
adc rdx,0
@@ -368,7 +372,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r15,rax
adc rdx,0
@@ -376,7 +380,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r8,rax
adc rdx,0
@@ -384,7 +388,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r9,rax
adc rdx,0
@@ -392,7 +396,7 @@ mont_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r10,rax
adc rdx,0
@@ -401,26 +405,26 @@ mont_reduce PROC PRIVATE
mov r11,rdx
xor rax,rax
- add r8,QWORD PTR[64+rcx]
- adc r9,QWORD PTR[72+rcx]
- adc r10,QWORD PTR[80+rcx]
- adc r11,QWORD PTR[88+rcx]
+ add r8,QWORD[64+rcx]
+ adc r9,QWORD[72+rcx]
+ adc r10,QWORD[80+rcx]
+ adc r11,QWORD[88+rcx]
adc rax,0
- mov QWORD PTR[64+rdi],r8
- mov QWORD PTR[72+rdi],r9
+ mov QWORD[64+rdi],r8
+ mov QWORD[72+rdi],r9
mov rbp,r10
- mov QWORD PTR[88+rdi],r11
+ mov QWORD[88+rdi],r11
- mov QWORD PTR[384+rsp],rax
+ mov QWORD[384+rsp],rax
- mov r8,QWORD PTR[rdi]
- mov r9,QWORD PTR[8+rdi]
- mov r10,QWORD PTR[16+rdi]
- mov r11,QWORD PTR[24+rdi]
+ mov r8,QWORD[rdi]
+ mov r9,QWORD[8+rdi]
+ mov r10,QWORD[16+rdi]
+ mov r11,QWORD[24+rdi]
@@ -432,67 +436,67 @@ mont_reduce PROC PRIVATE
add rdi,8*10
add rsi,64
- lea rcx,QWORD PTR[296+rsp]
+ lea rcx,[296+rsp]
call MULADD_128x512
- mov rax,QWORD PTR[384+rsp]
+ mov rax,QWORD[384+rsp]
- add r8,QWORD PTR[((-16))+rdi]
- adc r9,QWORD PTR[((-8))+rdi]
- mov QWORD PTR[64+rcx],r8
- mov QWORD PTR[72+rcx],r9
+ add r8,QWORD[((-16))+rdi]
+ adc r9,QWORD[((-8))+rdi]
+ mov QWORD[64+rcx],r8
+ mov QWORD[72+rcx],r9
adc rax,rax
- mov QWORD PTR[384+rsp],rax
+ mov QWORD[384+rsp],rax
- lea rdi,QWORD PTR[192+rsp]
+ lea rdi,[192+rsp]
add rsi,64
- mov r8,QWORD PTR[rsi]
- mov rbx,QWORD PTR[8+rsi]
+ mov r8,QWORD[rsi]
+ mov rbx,QWORD[8+rsi]
- mov rax,QWORD PTR[rcx]
+ mov rax,QWORD[rcx]
mul r8
mov rbp,rax
mov r9,rdx
- mov rax,QWORD PTR[8+rcx]
+ mov rax,QWORD[8+rcx]
mul r8
add r9,rax
- mov rax,QWORD PTR[rcx]
+ mov rax,QWORD[rcx]
mul rbx
add r9,rax
- mov QWORD PTR[8+rdi],r9
+ mov QWORD[8+rdi],r9
sub rsi,192
- mov r8,QWORD PTR[rcx]
- mov r9,QWORD PTR[8+rcx]
+ mov r8,QWORD[rcx]
+ mov r9,QWORD[8+rcx]
call MULADD_128x512
- mov rax,QWORD PTR[rsi]
- mov rbx,QWORD PTR[8+rsi]
- mov rdi,QWORD PTR[16+rsi]
- mov rdx,QWORD PTR[24+rsi]
+ mov rax,QWORD[rsi]
+ mov rbx,QWORD[8+rsi]
+ mov rdi,QWORD[16+rsi]
+ mov rdx,QWORD[24+rsi]
- mov rbp,QWORD PTR[384+rsp]
+ mov rbp,QWORD[384+rsp]
- add r8,QWORD PTR[64+rcx]
- adc r9,QWORD PTR[72+rcx]
+ add r8,QWORD[64+rcx]
+ adc r9,QWORD[72+rcx]
adc rbp,rbp
@@ -500,20 +504,20 @@ mont_reduce PROC PRIVATE
shl rbp,3
- mov rcx,QWORD PTR[32+rsp]
+ mov rcx,QWORD[32+rsp]
add rbp,rcx
xor rsi,rsi
- add r10,QWORD PTR[rbp]
- adc r11,QWORD PTR[64+rbp]
- adc r12,QWORD PTR[128+rbp]
- adc r13,QWORD PTR[192+rbp]
- adc r14,QWORD PTR[256+rbp]
- adc r15,QWORD PTR[320+rbp]
- adc r8,QWORD PTR[384+rbp]
- adc r9,QWORD PTR[448+rbp]
+ add r10,QWORD[rbp]
+ adc r11,QWORD[64+rbp]
+ adc r12,QWORD[128+rbp]
+ adc r13,QWORD[192+rbp]
+ adc r14,QWORD[256+rbp]
+ adc r15,QWORD[320+rbp]
+ adc r8,QWORD[384+rbp]
+ adc r9,QWORD[448+rbp]
@@ -539,10 +543,10 @@ mont_reduce PROC PRIVATE
add rcx,512
- mov rax,QWORD PTR[32+rcx]
- mov rbx,QWORD PTR[40+rcx]
- mov rdi,QWORD PTR[48+rcx]
- mov rdx,QWORD PTR[56+rcx]
+ mov rax,QWORD[32+rcx]
+ mov rbx,QWORD[40+rcx]
+ mov rdi,QWORD[48+rcx]
+ mov rdx,QWORD[56+rcx]
@@ -562,30 +566,30 @@ mont_reduce PROC PRIVATE
- mov rsi,QWORD PTR[144+rsp]
- mov QWORD PTR[rsi],r10
- mov QWORD PTR[8+rsi],r11
- mov QWORD PTR[16+rsi],r12
- mov QWORD PTR[24+rsi],r13
- mov QWORD PTR[32+rsi],r14
- mov QWORD PTR[40+rsi],r15
- mov QWORD PTR[48+rsi],r8
- mov QWORD PTR[56+rsi],r9
+ mov rsi,QWORD[144+rsp]
+ mov QWORD[rsi],r10
+ mov QWORD[8+rsi],r11
+ mov QWORD[16+rsi],r12
+ mov QWORD[24+rsi],r13
+ mov QWORD[32+rsi],r14
+ mov QWORD[40+rsi],r15
+ mov QWORD[48+rsi],r8
+ mov QWORD[56+rsi],r9
DB 0F3h,0C3h ;repret
-mont_reduce ENDP
+
ALIGN 16
-mont_mul_a3b PROC PRIVATE
+mont_mul_a3b:
- mov rbp,QWORD PTR[rdi]
+ mov rbp,QWORD[rdi]
mov rax,r10
mul rbp
- mov QWORD PTR[520+rsp],rax
+ mov QWORD[520+rsp],rax
mov r10,rdx
mov rax,r11
mul rbp
@@ -622,15 +626,15 @@ mont_mul_a3b PROC PRIVATE
add r8,rax
adc rdx,0
mov r9,rdx
- mov rbp,QWORD PTR[8+rdi]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[8+rdi]
+ mov rax,QWORD[rsi]
mul rbp
add r10,rax
adc rdx,0
- mov QWORD PTR[528+rsp],r10
+ mov QWORD[528+rsp],r10
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r11,rax
adc rdx,0
@@ -638,7 +642,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r12,rax
adc rdx,0
@@ -646,7 +650,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r13,rax
adc rdx,0
@@ -654,7 +658,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r14,rax
adc rdx,0
@@ -662,7 +666,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r15,rax
adc rdx,0
@@ -670,7 +674,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r8,rax
adc rdx,0
@@ -678,22 +682,22 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r9,rax
adc rdx,0
add r9,rbx
adc rdx,0
mov r10,rdx
- mov rbp,QWORD PTR[16+rdi]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[16+rdi]
+ mov rax,QWORD[rsi]
mul rbp
add r11,rax
adc rdx,0
- mov QWORD PTR[536+rsp],r11
+ mov QWORD[536+rsp],r11
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r12,rax
adc rdx,0
@@ -701,7 +705,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r13,rax
adc rdx,0
@@ -709,7 +713,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r14,rax
adc rdx,0
@@ -717,7 +721,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r15,rax
adc rdx,0
@@ -725,7 +729,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r8,rax
adc rdx,0
@@ -733,7 +737,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r9,rax
adc rdx,0
@@ -741,22 +745,22 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r10,rax
adc rdx,0
add r10,rbx
adc rdx,0
mov r11,rdx
- mov rbp,QWORD PTR[24+rdi]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[24+rdi]
+ mov rax,QWORD[rsi]
mul rbp
add r12,rax
adc rdx,0
- mov QWORD PTR[544+rsp],r12
+ mov QWORD[544+rsp],r12
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r13,rax
adc rdx,0
@@ -764,7 +768,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r14,rax
adc rdx,0
@@ -772,7 +776,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r15,rax
adc rdx,0
@@ -780,7 +784,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r8,rax
adc rdx,0
@@ -788,7 +792,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r9,rax
adc rdx,0
@@ -796,7 +800,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r10,rax
adc rdx,0
@@ -804,22 +808,22 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r11,rax
adc rdx,0
add r11,rbx
adc rdx,0
mov r12,rdx
- mov rbp,QWORD PTR[32+rdi]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[32+rdi]
+ mov rax,QWORD[rsi]
mul rbp
add r13,rax
adc rdx,0
- mov QWORD PTR[552+rsp],r13
+ mov QWORD[552+rsp],r13
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r14,rax
adc rdx,0
@@ -827,7 +831,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r15,rax
adc rdx,0
@@ -835,7 +839,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r8,rax
adc rdx,0
@@ -843,7 +847,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r9,rax
adc rdx,0
@@ -851,7 +855,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r10,rax
adc rdx,0
@@ -859,7 +863,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r11,rax
adc rdx,0
@@ -867,22 +871,22 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r12,rax
adc rdx,0
add r12,rbx
adc rdx,0
mov r13,rdx
- mov rbp,QWORD PTR[40+rdi]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[40+rdi]
+ mov rax,QWORD[rsi]
mul rbp
add r14,rax
adc rdx,0
- mov QWORD PTR[560+rsp],r14
+ mov QWORD[560+rsp],r14
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r15,rax
adc rdx,0
@@ -890,7 +894,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r8,rax
adc rdx,0
@@ -898,7 +902,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r9,rax
adc rdx,0
@@ -906,7 +910,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r10,rax
adc rdx,0
@@ -914,7 +918,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r11,rax
adc rdx,0
@@ -922,7 +926,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r12,rax
adc rdx,0
@@ -930,22 +934,22 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r13,rax
adc rdx,0
add r13,rbx
adc rdx,0
mov r14,rdx
- mov rbp,QWORD PTR[48+rdi]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[48+rdi]
+ mov rax,QWORD[rsi]
mul rbp
add r15,rax
adc rdx,0
- mov QWORD PTR[568+rsp],r15
+ mov QWORD[568+rsp],r15
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r8,rax
adc rdx,0
@@ -953,7 +957,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r9,rax
adc rdx,0
@@ -961,7 +965,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r10,rax
adc rdx,0
@@ -969,7 +973,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r11,rax
adc rdx,0
@@ -977,7 +981,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r12,rax
adc rdx,0
@@ -985,7 +989,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r13,rax
adc rdx,0
@@ -993,22 +997,22 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r14,rax
adc rdx,0
add r14,rbx
adc rdx,0
mov r15,rdx
- mov rbp,QWORD PTR[56+rdi]
- mov rax,QWORD PTR[rsi]
+ mov rbp,QWORD[56+rdi]
+ mov rax,QWORD[rsi]
mul rbp
add r8,rax
adc rdx,0
- mov QWORD PTR[576+rsp],r8
+ mov QWORD[576+rsp],r8
mov rbx,rdx
- mov rax,QWORD PTR[8+rsi]
+ mov rax,QWORD[8+rsi]
mul rbp
add r9,rax
adc rdx,0
@@ -1016,7 +1020,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[16+rsi]
+ mov rax,QWORD[16+rsi]
mul rbp
add r10,rax
adc rdx,0
@@ -1024,7 +1028,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[24+rsi]
+ mov rax,QWORD[24+rsi]
mul rbp
add r11,rax
adc rdx,0
@@ -1032,7 +1036,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[32+rsi]
+ mov rax,QWORD[32+rsi]
mul rbp
add r12,rax
adc rdx,0
@@ -1040,7 +1044,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[40+rsi]
+ mov rax,QWORD[40+rsi]
mul rbp
add r13,rax
adc rdx,0
@@ -1048,7 +1052,7 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[48+rsi]
+ mov rax,QWORD[48+rsi]
mul rbp
add r14,rax
adc rdx,0
@@ -1056,34 +1060,34 @@ mont_mul_a3b PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov rax,QWORD PTR[56+rsi]
+ mov rax,QWORD[56+rsi]
mul rbp
add r15,rax
adc rdx,0
add r15,rbx
adc rdx,0
mov r8,rdx
- mov QWORD PTR[584+rsp],r9
- mov QWORD PTR[592+rsp],r10
- mov QWORD PTR[600+rsp],r11
- mov QWORD PTR[608+rsp],r12
- mov QWORD PTR[616+rsp],r13
- mov QWORD PTR[624+rsp],r14
- mov QWORD PTR[632+rsp],r15
- mov QWORD PTR[640+rsp],r8
+ mov QWORD[584+rsp],r9
+ mov QWORD[592+rsp],r10
+ mov QWORD[600+rsp],r11
+ mov QWORD[608+rsp],r12
+ mov QWORD[616+rsp],r13
+ mov QWORD[624+rsp],r14
+ mov QWORD[632+rsp],r15
+ mov QWORD[640+rsp],r8
+
+ jmp NEAR mont_reduce
- jmp mont_reduce
-mont_mul_a3b ENDP
ALIGN 16
-sqr_reduce PROC PRIVATE
- mov rcx,QWORD PTR[16+rsp]
+sqr_reduce:
+ mov rcx,QWORD[16+rsp]
@@ -1091,7 +1095,7 @@ sqr_reduce PROC PRIVATE
mov rax,r11
mul rbx
- mov QWORD PTR[528+rsp],rax
+ mov QWORD[528+rsp],rax
mov r10,rdx
mov rax,r12
mul rbx
@@ -1124,31 +1128,31 @@ sqr_reduce PROC PRIVATE
adc rdx,0
mov rsi,rdx
- mov QWORD PTR[536+rsp],r10
+ mov QWORD[536+rsp],r10
- mov rbx,QWORD PTR[8+rcx]
+ mov rbx,QWORD[8+rcx]
- mov rax,QWORD PTR[16+rcx]
+ mov rax,QWORD[16+rcx]
mul rbx
add r11,rax
adc rdx,0
- mov QWORD PTR[544+rsp],r11
+ mov QWORD[544+rsp],r11
mov r10,rdx
- mov rax,QWORD PTR[24+rcx]
+ mov rax,QWORD[24+rcx]
mul rbx
add r12,rax
adc rdx,0
add r12,r10
adc rdx,0
- mov QWORD PTR[552+rsp],r12
+ mov QWORD[552+rsp],r12
mov r10,rdx
- mov rax,QWORD PTR[32+rcx]
+ mov rax,QWORD[32+rcx]
mul rbx
add r13,rax
adc rdx,0
@@ -1156,7 +1160,7 @@ sqr_reduce PROC PRIVATE
adc rdx,0
mov r10,rdx
- mov rax,QWORD PTR[40+rcx]
+ mov rax,QWORD[40+rcx]
mul rbx
add r14,rax
adc rdx,0
@@ -1184,25 +1188,25 @@ sqr_reduce PROC PRIVATE
- mov rbx,QWORD PTR[16+rcx]
+ mov rbx,QWORD[16+rcx]
- mov rax,QWORD PTR[24+rcx]
+ mov rax,QWORD[24+rcx]
mul rbx
add r13,rax
adc rdx,0
- mov QWORD PTR[560+rsp],r13
+ mov QWORD[560+rsp],r13
mov r10,rdx
- mov rax,QWORD PTR[32+rcx]
+ mov rax,QWORD[32+rcx]
mul rbx
add r14,rax
adc rdx,0
add r14,r10
adc rdx,0
- mov QWORD PTR[568+rsp],r14
+ mov QWORD[568+rsp],r14
mov r10,rdx
- mov rax,QWORD PTR[40+rcx]
+ mov rax,QWORD[40+rcx]
mul rbx
add r15,rax
adc rdx,0
@@ -1231,22 +1235,22 @@ sqr_reduce PROC PRIVATE
- mov rbx,QWORD PTR[24+rcx]
+ mov rbx,QWORD[24+rcx]
- mov rax,QWORD PTR[32+rcx]
+ mov rax,QWORD[32+rcx]
mul rbx
add r15,rax
adc rdx,0
- mov QWORD PTR[576+rsp],r15
+ mov QWORD[576+rsp],r15
mov r10,rdx
- mov rax,QWORD PTR[40+rcx]
+ mov rax,QWORD[40+rcx]
mul rbx
add rsi,rax
adc rdx,0
add rsi,r10
adc rdx,0
- mov QWORD PTR[584+rsp],rsi
+ mov QWORD[584+rsp],rsi
mov r10,rdx
mov rax,r8
@@ -1269,13 +1273,13 @@ sqr_reduce PROC PRIVATE
- mov rbx,QWORD PTR[32+rcx]
+ mov rbx,QWORD[32+rcx]
- mov rax,QWORD PTR[40+rcx]
+ mov rax,QWORD[40+rcx]
mul rbx
add r11,rax
adc rdx,0
- mov QWORD PTR[592+rsp],r11
+ mov QWORD[592+rsp],r11
mov r10,rdx
mov rax,r8
@@ -1284,7 +1288,7 @@ sqr_reduce PROC PRIVATE
adc rdx,0
add r12,r10
adc rdx,0
- mov QWORD PTR[600+rsp],r12
+ mov QWORD[600+rsp],r12
mov r10,rdx
mov rax,r9
@@ -1299,13 +1303,13 @@ sqr_reduce PROC PRIVATE
- mov rbx,QWORD PTR[40+rcx]
+ mov rbx,QWORD[40+rcx]
mov rax,r8
mul rbx
add r15,rax
adc rdx,0
- mov QWORD PTR[608+rsp],r15
+ mov QWORD[608+rsp],r15
mov r10,rdx
mov rax,r9
@@ -1314,7 +1318,7 @@ sqr_reduce PROC PRIVATE
adc rdx,0
add r11,r10
adc rdx,0
- mov QWORD PTR[616+rsp],r11
+ mov QWORD[616+rsp],r11
mov r12,rdx
@@ -1327,19 +1331,19 @@ sqr_reduce PROC PRIVATE
mul rbx
add r12,rax
adc rdx,0
- mov QWORD PTR[624+rsp],r12
+ mov QWORD[624+rsp],r12
- mov QWORD PTR[632+rsp],rdx
+ mov QWORD[632+rsp],rdx
- mov r10,QWORD PTR[528+rsp]
- mov r11,QWORD PTR[536+rsp]
- mov r12,QWORD PTR[544+rsp]
- mov r13,QWORD PTR[552+rsp]
- mov r14,QWORD PTR[560+rsp]
- mov r15,QWORD PTR[568+rsp]
+ mov r10,QWORD[528+rsp]
+ mov r11,QWORD[536+rsp]
+ mov r12,QWORD[544+rsp]
+ mov r13,QWORD[552+rsp]
+ mov r14,QWORD[560+rsp]
+ mov r15,QWORD[568+rsp]
- mov rax,QWORD PTR[24+rcx]
+ mov rax,QWORD[24+rcx]
mul rax
mov rdi,rax
mov r8,rdx
@@ -1352,12 +1356,12 @@ sqr_reduce PROC PRIVATE
adc r15,r15
adc r8,0
- mov rax,QWORD PTR[rcx]
+ mov rax,QWORD[rcx]
mul rax
- mov QWORD PTR[520+rsp],rax
+ mov QWORD[520+rsp],rax
mov rbx,rdx
- mov rax,QWORD PTR[8+rcx]
+ mov rax,QWORD[8+rcx]
mul rax
add r10,rbx
@@ -1365,10 +1369,10 @@ sqr_reduce PROC PRIVATE
adc rdx,0
mov rbx,rdx
- mov QWORD PTR[528+rsp],r10
- mov QWORD PTR[536+rsp],r11
+ mov QWORD[528+rsp],r10
+ mov QWORD[536+rsp],r11
- mov rax,QWORD PTR[16+rcx]
+ mov rax,QWORD[16+rcx]
mul rax
add r12,rbx
@@ -1377,28 +1381,28 @@ sqr_reduce PROC PRIVATE
mov rbx,rdx
- mov QWORD PTR[544+rsp],r12
- mov QWORD PTR[552+rsp],r13
+ mov QWORD[544+rsp],r12
+ mov QWORD[552+rsp],r13
xor rbp,rbp
add r14,rbx
adc r15,rdi
adc rbp,0
- mov QWORD PTR[560+rsp],r14
- mov QWORD PTR[568+rsp],r15
+ mov QWORD[560+rsp],r14
+ mov QWORD[568+rsp],r15
- mov r10,QWORD PTR[576+rsp]
- mov r11,QWORD PTR[584+rsp]
- mov r12,QWORD PTR[592+rsp]
- mov r13,QWORD PTR[600+rsp]
- mov r14,QWORD PTR[608+rsp]
- mov r15,QWORD PTR[616+rsp]
- mov rdi,QWORD PTR[624+rsp]
- mov rsi,QWORD PTR[632+rsp]
+ mov r10,QWORD[576+rsp]
+ mov r11,QWORD[584+rsp]
+ mov r12,QWORD[592+rsp]
+ mov r13,QWORD[600+rsp]
+ mov r14,QWORD[608+rsp]
+ mov r15,QWORD[616+rsp]
+ mov rdi,QWORD[624+rsp]
+ mov rsi,QWORD[632+rsp]
mov rax,r9
mul rax
@@ -1417,7 +1421,7 @@ sqr_reduce PROC PRIVATE
add r10,rbp
- mov rax,QWORD PTR[32+rcx]
+ mov rax,QWORD[32+rcx]
mul rax
add r10,r8
@@ -1426,10 +1430,10 @@ sqr_reduce PROC PRIVATE
mov rbp,rdx
- mov QWORD PTR[576+rsp],r10
- mov QWORD PTR[584+rsp],r11
+ mov QWORD[576+rsp],r10
+ mov QWORD[584+rsp],r11
- mov rax,QWORD PTR[40+rcx]
+ mov rax,QWORD[40+rcx]
mul rax
add r12,rbp
@@ -1438,38 +1442,38 @@ sqr_reduce PROC PRIVATE
mov rbp,rdx
- mov QWORD PTR[592+rsp],r12
- mov QWORD PTR[600+rsp],r13
+ mov QWORD[592+rsp],r12
+ mov QWORD[600+rsp],r13
- mov rax,QWORD PTR[48+rcx]
+ mov rax,QWORD[48+rcx]
mul rax
add r14,rbp
adc r15,rax
adc rdx,0
- mov QWORD PTR[608+rsp],r14
- mov QWORD PTR[616+rsp],r15
+ mov QWORD[608+rsp],r14
+ mov QWORD[616+rsp],r15
add rdi,rdx
adc rsi,r9
adc rbx,0
- mov QWORD PTR[624+rsp],rdi
- mov QWORD PTR[632+rsp],rsi
- mov QWORD PTR[640+rsp],rbx
+ mov QWORD[624+rsp],rdi
+ mov QWORD[632+rsp],rsi
+ mov QWORD[640+rsp],rbx
- jmp mont_reduce
+ jmp NEAR mont_reduce
-sqr_reduce ENDP
-PUBLIC mod_exp_512
-mod_exp_512 PROC PUBLIC
- mov QWORD PTR[8+rsp],rdi ;WIN64 prologue
- mov QWORD PTR[16+rsp],rsi
+global mod_exp_512
+
+mod_exp_512:
+ mov QWORD[8+rsp],rdi ;WIN64 prologue
+ mov QWORD[16+rsp],rsi
mov rax,rsp
-$L$SEH_begin_mod_exp_512::
+$L$SEH_begin_mod_exp_512:
mov rdi,rcx
mov rsi,rdx
mov rdx,r8
@@ -1489,306 +1493,305 @@ $L$SEH_begin_mod_exp_512::
and rsp,-64
- mov QWORD PTR[rsp],r8
- mov QWORD PTR[8+rsp],rdi
- mov QWORD PTR[16+rsp],rsi
- mov QWORD PTR[24+rsp],rcx
-$L$body::
+ mov QWORD[rsp],r8
+ mov QWORD[8+rsp],rdi
+ mov QWORD[16+rsp],rsi
+ mov QWORD[24+rsp],rcx
+$L$body:
pxor xmm4,xmm4
- movdqu xmm0,XMMWORD PTR[rsi]
- movdqu xmm1,XMMWORD PTR[16+rsi]
- movdqu xmm2,XMMWORD PTR[32+rsi]
- movdqu xmm3,XMMWORD PTR[48+rsi]
- movdqa XMMWORD PTR[512+rsp],xmm4
- movdqa XMMWORD PTR[528+rsp],xmm4
- movdqa XMMWORD PTR[608+rsp],xmm4
- movdqa XMMWORD PTR[624+rsp],xmm4
- movdqa XMMWORD PTR[544+rsp],xmm0
- movdqa XMMWORD PTR[560+rsp],xmm1
- movdqa XMMWORD PTR[576+rsp],xmm2
- movdqa XMMWORD PTR[592+rsp],xmm3
-
-
- movdqu xmm0,XMMWORD PTR[rdx]
- movdqu xmm1,XMMWORD PTR[16+rdx]
- movdqu xmm2,XMMWORD PTR[32+rdx]
- movdqu xmm3,XMMWORD PTR[48+rdx]
-
- lea rbx,QWORD PTR[384+rsp]
- mov QWORD PTR[136+rsp],rbx
+ movdqu xmm0,XMMWORD[rsi]
+ movdqu xmm1,XMMWORD[16+rsi]
+ movdqu xmm2,XMMWORD[32+rsi]
+ movdqu xmm3,XMMWORD[48+rsi]
+ movdqa XMMWORD[512+rsp],xmm4
+ movdqa XMMWORD[528+rsp],xmm4
+ movdqa XMMWORD[608+rsp],xmm4
+ movdqa XMMWORD[624+rsp],xmm4
+ movdqa XMMWORD[544+rsp],xmm0
+ movdqa XMMWORD[560+rsp],xmm1
+ movdqa XMMWORD[576+rsp],xmm2
+ movdqa XMMWORD[592+rsp],xmm3
+
+
+ movdqu xmm0,XMMWORD[rdx]
+ movdqu xmm1,XMMWORD[16+rdx]
+ movdqu xmm2,XMMWORD[32+rdx]
+ movdqu xmm3,XMMWORD[48+rdx]
+
+ lea rbx,[384+rsp]
+ mov QWORD[136+rsp],rbx
call mont_reduce
- lea rcx,QWORD PTR[448+rsp]
+ lea rcx,[448+rsp]
xor rax,rax
- mov QWORD PTR[rcx],rax
- mov QWORD PTR[8+rcx],rax
- mov QWORD PTR[24+rcx],rax
- mov QWORD PTR[32+rcx],rax
- mov QWORD PTR[40+rcx],rax
- mov QWORD PTR[48+rcx],rax
- mov QWORD PTR[56+rcx],rax
- mov QWORD PTR[128+rsp],rax
- mov QWORD PTR[16+rcx],1
-
- lea rbp,QWORD PTR[640+rsp]
+ mov QWORD[rcx],rax
+ mov QWORD[8+rcx],rax
+ mov QWORD[24+rcx],rax
+ mov QWORD[32+rcx],rax
+ mov QWORD[40+rcx],rax
+ mov QWORD[48+rcx],rax
+ mov QWORD[56+rcx],rax
+ mov QWORD[128+rsp],rax
+ mov QWORD[16+rcx],1
+
+ lea rbp,[640+rsp]
mov rsi,rcx
mov rdi,rbp
mov rax,8
-loop_0::
- mov rbx,QWORD PTR[rcx]
- mov WORD PTR[rdi],bx
+loop_0:
+ mov rbx,QWORD[rcx]
+ mov WORD[rdi],bx
shr rbx,16
- mov WORD PTR[64+rdi],bx
+ mov WORD[64+rdi],bx
shr rbx,16
- mov WORD PTR[128+rdi],bx
+ mov WORD[128+rdi],bx
shr rbx,16
- mov WORD PTR[192+rdi],bx
- lea rcx,QWORD PTR[8+rcx]
- lea rdi,QWORD PTR[256+rdi]
+ mov WORD[192+rdi],bx
+ lea rcx,[8+rcx]
+ lea rdi,[256+rdi]
dec rax
- jnz loop_0
+ jnz NEAR loop_0
mov rax,31
- mov QWORD PTR[32+rsp],rax
- mov QWORD PTR[40+rsp],rbp
-
- mov QWORD PTR[136+rsp],rsi
- mov r10,QWORD PTR[rsi]
- mov r11,QWORD PTR[8+rsi]
- mov r12,QWORD PTR[16+rsi]
- mov r13,QWORD PTR[24+rsi]
- mov r14,QWORD PTR[32+rsi]
- mov r15,QWORD PTR[40+rsi]
- mov r8,QWORD PTR[48+rsi]
- mov r9,QWORD PTR[56+rsi]
-init_loop::
- lea rdi,QWORD PTR[384+rsp]
+ mov QWORD[32+rsp],rax
+ mov QWORD[40+rsp],rbp
+
+ mov QWORD[136+rsp],rsi
+ mov r10,QWORD[rsi]
+ mov r11,QWORD[8+rsi]
+ mov r12,QWORD[16+rsi]
+ mov r13,QWORD[24+rsi]
+ mov r14,QWORD[32+rsi]
+ mov r15,QWORD[40+rsi]
+ mov r8,QWORD[48+rsi]
+ mov r9,QWORD[56+rsi]
+init_loop:
+ lea rdi,[384+rsp]
call mont_mul_a3b
- lea rsi,QWORD PTR[448+rsp]
- mov rbp,QWORD PTR[40+rsp]
+ lea rsi,[448+rsp]
+ mov rbp,QWORD[40+rsp]
add rbp,2
- mov QWORD PTR[40+rsp],rbp
+ mov QWORD[40+rsp],rbp
mov rcx,rsi
mov rax,8
-loop_1::
- mov rbx,QWORD PTR[rcx]
- mov WORD PTR[rbp],bx
+loop_1:
+ mov rbx,QWORD[rcx]
+ mov WORD[rbp],bx
shr rbx,16
- mov WORD PTR[64+rbp],bx
+ mov WORD[64+rbp],bx
shr rbx,16
- mov WORD PTR[128+rbp],bx
+ mov WORD[128+rbp],bx
shr rbx,16
- mov WORD PTR[192+rbp],bx
- lea rcx,QWORD PTR[8+rcx]
- lea rbp,QWORD PTR[256+rbp]
+ mov WORD[192+rbp],bx
+ lea rcx,[8+rcx]
+ lea rbp,[256+rbp]
dec rax
- jnz loop_1
- mov rax,QWORD PTR[32+rsp]
+ jnz NEAR loop_1
+ mov rax,QWORD[32+rsp]
sub rax,1
- mov QWORD PTR[32+rsp],rax
- jne init_loop
+ mov QWORD[32+rsp],rax
+ jne NEAR init_loop
- movdqa XMMWORD PTR[64+rsp],xmm0
- movdqa XMMWORD PTR[80+rsp],xmm1
- movdqa XMMWORD PTR[96+rsp],xmm2
- movdqa XMMWORD PTR[112+rsp],xmm3
+ movdqa XMMWORD[64+rsp],xmm0
+ movdqa XMMWORD[80+rsp],xmm1
+ movdqa XMMWORD[96+rsp],xmm2
+ movdqa XMMWORD[112+rsp],xmm3
- mov eax,DWORD PTR[126+rsp]
+ mov eax,DWORD[126+rsp]
mov rdx,rax
shr rax,11
- and edx,007FFh
- mov DWORD PTR[126+rsp],edx
- lea rsi,QWORD PTR[640+rax*2+rsp]
- mov rdx,QWORD PTR[8+rsp]
+ and edx,0x07FF
+ mov DWORD[126+rsp],edx
+ lea rsi,[640+rax*2+rsp]
+ mov rdx,QWORD[8+rsp]
mov rbp,4
-loop_2::
- movzx rbx,WORD PTR[192+rsi]
- movzx rax,WORD PTR[448+rsi]
+loop_2:
+ movzx rbx,WORD[192+rsi]
+ movzx rax,WORD[448+rsi]
shl rbx,16
shl rax,16
- mov bx,WORD PTR[128+rsi]
- mov ax,WORD PTR[384+rsi]
+ mov bx,WORD[128+rsi]
+ mov ax,WORD[384+rsi]
shl rbx,16
shl rax,16
- mov bx,WORD PTR[64+rsi]
- mov ax,WORD PTR[320+rsi]
+ mov bx,WORD[64+rsi]
+ mov ax,WORD[320+rsi]
shl rbx,16
shl rax,16
- mov bx,WORD PTR[rsi]
- mov ax,WORD PTR[256+rsi]
- mov QWORD PTR[rdx],rbx
- mov QWORD PTR[8+rdx],rax
- lea rsi,QWORD PTR[512+rsi]
- lea rdx,QWORD PTR[16+rdx]
+ mov bx,WORD[rsi]
+ mov ax,WORD[256+rsi]
+ mov QWORD[rdx],rbx
+ mov QWORD[8+rdx],rax
+ lea rsi,[512+rsi]
+ lea rdx,[16+rdx]
sub rbp,1
- jnz loop_2
- mov QWORD PTR[48+rsp],505
-
- mov rcx,QWORD PTR[8+rsp]
- mov QWORD PTR[136+rsp],rcx
- mov r10,QWORD PTR[rcx]
- mov r11,QWORD PTR[8+rcx]
- mov r12,QWORD PTR[16+rcx]
- mov r13,QWORD PTR[24+rcx]
- mov r14,QWORD PTR[32+rcx]
- mov r15,QWORD PTR[40+rcx]
- mov r8,QWORD PTR[48+rcx]
- mov r9,QWORD PTR[56+rcx]
- jmp sqr_2
-
-main_loop_a3b::
+ jnz NEAR loop_2
+ mov QWORD[48+rsp],505
+
+ mov rcx,QWORD[8+rsp]
+ mov QWORD[136+rsp],rcx
+ mov r10,QWORD[rcx]
+ mov r11,QWORD[8+rcx]
+ mov r12,QWORD[16+rcx]
+ mov r13,QWORD[24+rcx]
+ mov r14,QWORD[32+rcx]
+ mov r15,QWORD[40+rcx]
+ mov r8,QWORD[48+rcx]
+ mov r9,QWORD[56+rcx]
+ jmp NEAR sqr_2
+
+main_loop_a3b:
call sqr_reduce
call sqr_reduce
call sqr_reduce
-sqr_2::
+sqr_2:
call sqr_reduce
call sqr_reduce
- mov rcx,QWORD PTR[48+rsp]
+ mov rcx,QWORD[48+rsp]
mov rax,rcx
shr rax,4
- mov edx,DWORD PTR[64+rax*2+rsp]
+ mov edx,DWORD[64+rax*2+rsp]
and rcx,15
shr rdx,cl
- and rdx,01Fh
+ and rdx,0x1F
- lea rsi,QWORD PTR[640+rdx*2+rsp]
- lea rdx,QWORD PTR[448+rsp]
+ lea rsi,[640+rdx*2+rsp]
+ lea rdx,[448+rsp]
mov rdi,rdx
mov rbp,4
-loop_3::
- movzx rbx,WORD PTR[192+rsi]
- movzx rax,WORD PTR[448+rsi]
+loop_3:
+ movzx rbx,WORD[192+rsi]
+ movzx rax,WORD[448+rsi]
shl rbx,16
shl rax,16
- mov bx,WORD PTR[128+rsi]
- mov ax,WORD PTR[384+rsi]
+ mov bx,WORD[128+rsi]
+ mov ax,WORD[384+rsi]
shl rbx,16
shl rax,16
- mov bx,WORD PTR[64+rsi]
- mov ax,WORD PTR[320+rsi]
+ mov bx,WORD[64+rsi]
+ mov ax,WORD[320+rsi]
shl rbx,16
shl rax,16
- mov bx,WORD PTR[rsi]
- mov ax,WORD PTR[256+rsi]
- mov QWORD PTR[rdx],rbx
- mov QWORD PTR[8+rdx],rax
- lea rsi,QWORD PTR[512+rsi]
- lea rdx,QWORD PTR[16+rdx]
+ mov bx,WORD[rsi]
+ mov ax,WORD[256+rsi]
+ mov QWORD[rdx],rbx
+ mov QWORD[8+rdx],rax
+ lea rsi,[512+rsi]
+ lea rdx,[16+rdx]
sub rbp,1
- jnz loop_3
- mov rsi,QWORD PTR[8+rsp]
+ jnz NEAR loop_3
+ mov rsi,QWORD[8+rsp]
call mont_mul_a3b
- mov rcx,QWORD PTR[48+rsp]
+ mov rcx,QWORD[48+rsp]
sub rcx,5
- mov QWORD PTR[48+rsp],rcx
- jge main_loop_a3b
+ mov QWORD[48+rsp],rcx
+ jge NEAR main_loop_a3b
-end_main_loop_a3b::
+end_main_loop_a3b:
- mov rdx,QWORD PTR[8+rsp]
+ mov rdx,QWORD[8+rsp]
pxor xmm4,xmm4
- movdqu xmm0,XMMWORD PTR[rdx]
- movdqu xmm1,XMMWORD PTR[16+rdx]
- movdqu xmm2,XMMWORD PTR[32+rdx]
- movdqu xmm3,XMMWORD PTR[48+rdx]
- movdqa XMMWORD PTR[576+rsp],xmm4
- movdqa XMMWORD PTR[592+rsp],xmm4
- movdqa XMMWORD PTR[608+rsp],xmm4
- movdqa XMMWORD PTR[624+rsp],xmm4
- movdqa XMMWORD PTR[512+rsp],xmm0
- movdqa XMMWORD PTR[528+rsp],xmm1
- movdqa XMMWORD PTR[544+rsp],xmm2
- movdqa XMMWORD PTR[560+rsp],xmm3
+ movdqu xmm0,XMMWORD[rdx]
+ movdqu xmm1,XMMWORD[16+rdx]
+ movdqu xmm2,XMMWORD[32+rdx]
+ movdqu xmm3,XMMWORD[48+rdx]
+ movdqa XMMWORD[576+rsp],xmm4
+ movdqa XMMWORD[592+rsp],xmm4
+ movdqa XMMWORD[608+rsp],xmm4
+ movdqa XMMWORD[624+rsp],xmm4
+ movdqa XMMWORD[512+rsp],xmm0
+ movdqa XMMWORD[528+rsp],xmm1
+ movdqa XMMWORD[544+rsp],xmm2
+ movdqa XMMWORD[560+rsp],xmm3
call mont_reduce
- mov rax,QWORD PTR[8+rsp]
- mov r8,QWORD PTR[rax]
- mov r9,QWORD PTR[8+rax]
- mov r10,QWORD PTR[16+rax]
- mov r11,QWORD PTR[24+rax]
- mov r12,QWORD PTR[32+rax]
- mov r13,QWORD PTR[40+rax]
- mov r14,QWORD PTR[48+rax]
- mov r15,QWORD PTR[56+rax]
+ mov rax,QWORD[8+rsp]
+ mov r8,QWORD[rax]
+ mov r9,QWORD[8+rax]
+ mov r10,QWORD[16+rax]
+ mov r11,QWORD[24+rax]
+ mov r12,QWORD[32+rax]
+ mov r13,QWORD[40+rax]
+ mov r14,QWORD[48+rax]
+ mov r15,QWORD[56+rax]
- mov rbx,QWORD PTR[24+rsp]
+ mov rbx,QWORD[24+rsp]
add rbx,512
- sub r8,QWORD PTR[rbx]
- sbb r9,QWORD PTR[8+rbx]
- sbb r10,QWORD PTR[16+rbx]
- sbb r11,QWORD PTR[24+rbx]
- sbb r12,QWORD PTR[32+rbx]
- sbb r13,QWORD PTR[40+rbx]
- sbb r14,QWORD PTR[48+rbx]
- sbb r15,QWORD PTR[56+rbx]
+ sub r8,QWORD[rbx]
+ sbb r9,QWORD[8+rbx]
+ sbb r10,QWORD[16+rbx]
+ sbb r11,QWORD[24+rbx]
+ sbb r12,QWORD[32+rbx]
+ sbb r13,QWORD[40+rbx]
+ sbb r14,QWORD[48+rbx]
+ sbb r15,QWORD[56+rbx]
- mov rsi,QWORD PTR[rax]
- mov rdi,QWORD PTR[8+rax]
- mov rcx,QWORD PTR[16+rax]
- mov rdx,QWORD PTR[24+rax]
+ mov rsi,QWORD[rax]
+ mov rdi,QWORD[8+rax]
+ mov rcx,QWORD[16+rax]
+ mov rdx,QWORD[24+rax]
cmovnc rsi,r8
cmovnc rdi,r9
cmovnc rcx,r10
cmovnc rdx,r11
- mov QWORD PTR[rax],rsi
- mov QWORD PTR[8+rax],rdi
- mov QWORD PTR[16+rax],rcx
- mov QWORD PTR[24+rax],rdx
-
- mov rsi,QWORD PTR[32+rax]
- mov rdi,QWORD PTR[40+rax]
- mov rcx,QWORD PTR[48+rax]
- mov rdx,QWORD PTR[56+rax]
+ mov QWORD[rax],rsi
+ mov QWORD[8+rax],rdi
+ mov QWORD[16+rax],rcx
+ mov QWORD[24+rax],rdx
+
+ mov rsi,QWORD[32+rax]
+ mov rdi,QWORD[40+rax]
+ mov rcx,QWORD[48+rax]
+ mov rdx,QWORD[56+rax]
cmovnc rsi,r12
cmovnc rdi,r13
cmovnc rcx,r14
cmovnc rdx,r15
- mov QWORD PTR[32+rax],rsi
- mov QWORD PTR[40+rax],rdi
- mov QWORD PTR[48+rax],rcx
- mov QWORD PTR[56+rax],rdx
-
- mov rsi,QWORD PTR[rsp]
- mov r15,QWORD PTR[rsi]
- mov r14,QWORD PTR[8+rsi]
- mov r13,QWORD PTR[16+rsi]
- mov r12,QWORD PTR[24+rsi]
- mov rbx,QWORD PTR[32+rsi]
- mov rbp,QWORD PTR[40+rsi]
- lea rsp,QWORD PTR[48+rsi]
-$L$epilogue::
- mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue
- mov rsi,QWORD PTR[16+rsp]
+ mov QWORD[32+rax],rsi
+ mov QWORD[40+rax],rdi
+ mov QWORD[48+rax],rcx
+ mov QWORD[56+rax],rdx
+
+ mov rsi,QWORD[rsp]
+ mov r15,QWORD[rsi]
+ mov r14,QWORD[8+rsi]
+ mov r13,QWORD[16+rsi]
+ mov r12,QWORD[24+rsi]
+ mov rbx,QWORD[32+rsi]
+ mov rbp,QWORD[40+rsi]
+ lea rsp,[48+rsi]
+$L$epilogue:
+ mov rdi,QWORD[8+rsp] ;WIN64 epilogue
+ mov rsi,QWORD[16+rsp]
DB 0F3h,0C3h ;repret
-$L$SEH_end_mod_exp_512::
-mod_exp_512 ENDP
-EXTERN __imp_RtlVirtualUnwind:NEAR
+$L$SEH_end_mod_exp_512:
+EXTERN __imp_RtlVirtualUnwind
ALIGN 16
-mod_exp_512_se_handler PROC PRIVATE
+mod_exp_512_se_handler:
push rsi
push rdi
push rbx
@@ -1800,60 +1803,60 @@ mod_exp_512_se_handler PROC PRIVATE
pushfq
sub rsp,64
- mov rax,QWORD PTR[120+r8]
- mov rbx,QWORD PTR[248+r8]
+ mov rax,QWORD[120+r8]
+ mov rbx,QWORD[248+r8]
- lea r10,QWORD PTR[$L$body]
+ lea r10,[$L$body]
cmp rbx,r10
- jb $L$in_prologue
+ jb NEAR $L$in_prologue
- mov rax,QWORD PTR[152+r8]
+ mov rax,QWORD[152+r8]
- lea r10,QWORD PTR[$L$epilogue]
+ lea r10,[$L$epilogue]
cmp rbx,r10
- jae $L$in_prologue
-
- mov rax,QWORD PTR[rax]
-
- mov rbx,QWORD PTR[32+rax]
- mov rbp,QWORD PTR[40+rax]
- mov r12,QWORD PTR[24+rax]
- mov r13,QWORD PTR[16+rax]
- mov r14,QWORD PTR[8+rax]
- mov r15,QWORD PTR[rax]
- lea rax,QWORD PTR[48+rax]
- mov QWORD PTR[144+r8],rbx
- mov QWORD PTR[160+r8],rbp
- mov QWORD PTR[216+r8],r12
- mov QWORD PTR[224+r8],r13
- mov QWORD PTR[232+r8],r14
- mov QWORD PTR[240+r8],r15
-
-$L$in_prologue::
- mov rdi,QWORD PTR[8+rax]
- mov rsi,QWORD PTR[16+rax]
- mov QWORD PTR[152+r8],rax
- mov QWORD PTR[168+r8],rsi
- mov QWORD PTR[176+r8],rdi
-
- mov rdi,QWORD PTR[40+r9]
+ jae NEAR $L$in_prologue
+
+ mov rax,QWORD[rax]
+
+ mov rbx,QWORD[32+rax]
+ mov rbp,QWORD[40+rax]
+ mov r12,QWORD[24+rax]
+ mov r13,QWORD[16+rax]
+ mov r14,QWORD[8+rax]
+ mov r15,QWORD[rax]
+ lea rax,[48+rax]
+ mov QWORD[144+r8],rbx
+ mov QWORD[160+r8],rbp
+ mov QWORD[216+r8],r12
+ mov QWORD[224+r8],r13
+ mov QWORD[232+r8],r14
+ mov QWORD[240+r8],r15
+
+$L$in_prologue:
+ mov rdi,QWORD[8+rax]
+ mov rsi,QWORD[16+rax]
+ mov QWORD[152+r8],rax
+ mov QWORD[168+r8],rsi
+ mov QWORD[176+r8],rdi
+
+ mov rdi,QWORD[40+r9]
mov rsi,r8
mov ecx,154
- DD 0a548f3fch
+ DD 0xa548f3fc
mov rsi,r9
xor rcx,rcx
- mov rdx,QWORD PTR[8+rsi]
- mov r8,QWORD PTR[rsi]
- mov r9,QWORD PTR[16+rsi]
- mov r10,QWORD PTR[40+rsi]
- lea r11,QWORD PTR[56+rsi]
- lea r12,QWORD PTR[24+rsi]
- mov QWORD PTR[32+rsp],r10
- mov QWORD PTR[40+rsp],r11
- mov QWORD PTR[48+rsp],r12
- mov QWORD PTR[56+rsp],rcx
- call QWORD PTR[__imp_RtlVirtualUnwind]
+ mov rdx,QWORD[8+rsi]
+ mov r8,QWORD[rsi]
+ mov r9,QWORD[16+rsi]
+ mov r10,QWORD[40+rsi]
+ lea r11,[56+rsi]
+ lea r12,[24+rsi]
+ mov QWORD[32+rsp],r10
+ mov QWORD[40+rsp],r11
+ mov QWORD[48+rsp],r12
+ mov QWORD[56+rsp],rcx
+ call QWORD[__imp_RtlVirtualUnwind]
mov eax,1
add rsp,64
@@ -1867,21 +1870,16 @@ $L$in_prologue::
pop rdi
pop rsi
DB 0F3h,0C3h ;repret
-mod_exp_512_se_handler ENDP
-.text$ ENDS
-.pdata SEGMENT READONLY ALIGN(4)
+
+section .pdata rdata align=4
ALIGN 4
- DD imagerel $L$SEH_begin_mod_exp_512
- DD imagerel $L$SEH_end_mod_exp_512
- DD imagerel $L$SEH_info_mod_exp_512
+ DD $L$SEH_begin_mod_exp_512 wrt ..imagebase
+ DD $L$SEH_end_mod_exp_512 wrt ..imagebase
+ DD $L$SEH_info_mod_exp_512 wrt ..imagebase
-.pdata ENDS
-.xdata SEGMENT READONLY ALIGN(8)
+section .xdata rdata align=8
ALIGN 8
-$L$SEH_info_mod_exp_512::
+$L$SEH_info_mod_exp_512:
DB 9,0,0,0
- DD imagerel mod_exp_512_se_handler
-
-.xdata ENDS
-END
+ DD mod_exp_512_se_handler wrt ..imagebase
« no previous file with comments | « third_party/boringssl/win-x86_64/crypto/aes/vpaes-x86_64.asm ('k') | third_party/boringssl/win-x86_64/crypto/bn/rsaz-avx2.asm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698