Skip to content

Commit 2259c18

Browse files
committed
Revert "Revert "Add from_bytes asm tests""
1 parent fef98f1 commit 2259c18

File tree

12 files changed

+4233
-0
lines changed

12 files changed

+4233
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,274 @@
1+
.globl _Z21fiat_25519_from_bytesPmPKh
2+
_Z21fiat_25519_from_bytesPmPKh:
3+
push rbp
4+
mov rbp, rsp
5+
sub rsp, 456
6+
mov qword ptr [rbp - 8], rdi
7+
mov qword ptr [rbp - 16], rsi
8+
mov rax, qword ptr [rbp - 16]
9+
movzx eax, byte ptr [rax + 31]
10+
shl rax, 44
11+
mov qword ptr [rbp - 24], rax
12+
mov rax, qword ptr [rbp - 16]
13+
movzx eax, byte ptr [rax + 30]
14+
shl rax, 36
15+
mov qword ptr [rbp - 32], rax
16+
mov rax, qword ptr [rbp - 16]
17+
movzx eax, byte ptr [rax + 29]
18+
shl rax, 28
19+
mov qword ptr [rbp - 40], rax
20+
mov rax, qword ptr [rbp - 16]
21+
movzx eax, byte ptr [rax + 28]
22+
shl rax, 20
23+
mov qword ptr [rbp - 48], rax
24+
mov rax, qword ptr [rbp - 16]
25+
movzx eax, byte ptr [rax + 27]
26+
shl rax, 12
27+
mov qword ptr [rbp - 56], rax
28+
mov rax, qword ptr [rbp - 16]
29+
movzx eax, byte ptr [rax + 26]
30+
shl rax, 4
31+
mov qword ptr [rbp - 64], rax
32+
mov rax, qword ptr [rbp - 16]
33+
movzx eax, byte ptr [rax + 25]
34+
shl rax, 47
35+
mov qword ptr [rbp - 72], rax
36+
mov rax, qword ptr [rbp - 16]
37+
movzx eax, byte ptr [rax + 24]
38+
shl rax, 39
39+
mov qword ptr [rbp - 80], rax
40+
mov rax, qword ptr [rbp - 16]
41+
movzx eax, byte ptr [rax + 23]
42+
shl rax, 31
43+
mov qword ptr [rbp - 88], rax
44+
mov rax, qword ptr [rbp - 16]
45+
movzx eax, byte ptr [rax + 22]
46+
shl rax, 23
47+
mov qword ptr [rbp - 96], rax
48+
mov rax, qword ptr [rbp - 16]
49+
movzx eax, byte ptr [rax + 21]
50+
shl rax, 15
51+
mov qword ptr [rbp - 104], rax
52+
mov rax, qword ptr [rbp - 16]
53+
movzx eax, byte ptr [rax + 20]
54+
shl rax, 7
55+
mov qword ptr [rbp - 112], rax
56+
mov rax, qword ptr [rbp - 16]
57+
movzx eax, byte ptr [rax + 19]
58+
shl rax, 50
59+
mov qword ptr [rbp - 120], rax
60+
mov rax, qword ptr [rbp - 16]
61+
movzx eax, byte ptr [rax + 18]
62+
shl rax, 42
63+
mov qword ptr [rbp - 128], rax
64+
mov rax, qword ptr [rbp - 16]
65+
movzx eax, byte ptr [rax + 17]
66+
shl rax, 34
67+
mov qword ptr [rbp - 136], rax
68+
mov rax, qword ptr [rbp - 16]
69+
movzx eax, byte ptr [rax + 16]
70+
shl rax, 26
71+
mov qword ptr [rbp - 144], rax
72+
mov rax, qword ptr [rbp - 16]
73+
movzx eax, byte ptr [rax + 15]
74+
shl rax, 18
75+
mov qword ptr [rbp - 152], rax
76+
mov rax, qword ptr [rbp - 16]
77+
movzx eax, byte ptr [rax + 14]
78+
shl rax, 10
79+
mov qword ptr [rbp - 160], rax
80+
mov rax, qword ptr [rbp - 16]
81+
movzx eax, byte ptr [rax + 13]
82+
shl rax, 2
83+
mov qword ptr [rbp - 168], rax
84+
mov rax, qword ptr [rbp - 16]
85+
movzx eax, byte ptr [rax + 12]
86+
shl rax, 45
87+
mov qword ptr [rbp - 176], rax
88+
mov rax, qword ptr [rbp - 16]
89+
movzx eax, byte ptr [rax + 11]
90+
shl rax, 37
91+
mov qword ptr [rbp - 184], rax
92+
mov rax, qword ptr [rbp - 16]
93+
movzx eax, byte ptr [rax + 10]
94+
shl rax, 29
95+
mov qword ptr [rbp - 192], rax
96+
mov rax, qword ptr [rbp - 16]
97+
movzx eax, byte ptr [rax + 9]
98+
shl rax, 21
99+
mov qword ptr [rbp - 200], rax
100+
mov rax, qword ptr [rbp - 16]
101+
movzx eax, byte ptr [rax + 8]
102+
shl rax, 13
103+
mov qword ptr [rbp - 208], rax
104+
mov rax, qword ptr [rbp - 16]
105+
movzx eax, byte ptr [rax + 7]
106+
shl rax, 5
107+
mov qword ptr [rbp - 216], rax
108+
mov rax, qword ptr [rbp - 16]
109+
movzx eax, byte ptr [rax + 6]
110+
shl rax, 48
111+
mov qword ptr [rbp - 224], rax
112+
mov rax, qword ptr [rbp - 16]
113+
movzx eax, byte ptr [rax + 5]
114+
shl rax, 40
115+
mov qword ptr [rbp - 232], rax
116+
mov rax, qword ptr [rbp - 16]
117+
movzx eax, byte ptr [rax + 4]
118+
shl rax, 32
119+
mov qword ptr [rbp - 240], rax
120+
mov rax, qword ptr [rbp - 16]
121+
movzx eax, byte ptr [rax + 3]
122+
shl rax, 24
123+
mov qword ptr [rbp - 248], rax
124+
mov rax, qword ptr [rbp - 16]
125+
movzx eax, byte ptr [rax + 2]
126+
shl rax, 16
127+
mov qword ptr [rbp - 256], rax
128+
mov rax, qword ptr [rbp - 16]
129+
movzx eax, byte ptr [rax + 1]
130+
shl rax, 8
131+
mov qword ptr [rbp - 264], rax
132+
mov rax, qword ptr [rbp - 16]
133+
mov al, byte ptr [rax]
134+
mov byte ptr [rbp - 265], al
135+
mov rax, qword ptr [rbp - 264]
136+
movzx ecx, byte ptr [rbp - 265]
137+
add rax, rcx
138+
mov qword ptr [rbp - 280], rax
139+
mov rax, qword ptr [rbp - 256]
140+
add rax, qword ptr [rbp - 280]
141+
mov qword ptr [rbp - 288], rax
142+
mov rax, qword ptr [rbp - 248]
143+
add rax, qword ptr [rbp - 288]
144+
mov qword ptr [rbp - 296], rax
145+
mov rax, qword ptr [rbp - 240]
146+
add rax, qword ptr [rbp - 296]
147+
mov qword ptr [rbp - 304], rax
148+
mov rax, qword ptr [rbp - 232]
149+
add rax, qword ptr [rbp - 304]
150+
mov qword ptr [rbp - 312], rax
151+
mov rax, qword ptr [rbp - 224]
152+
add rax, qword ptr [rbp - 312]
153+
mov qword ptr [rbp - 320], rax
154+
movabs rax, 2251799813685247
155+
and rax, qword ptr [rbp - 320]
156+
mov qword ptr [rbp - 328], rax
157+
mov rax, qword ptr [rbp - 320]
158+
shr rax, 51
159+
mov byte ptr [rbp - 329], al
160+
mov rax, qword ptr [rbp - 216]
161+
movzx ecx, byte ptr [rbp - 329]
162+
add rax, rcx
163+
mov qword ptr [rbp - 344], rax
164+
mov rax, qword ptr [rbp - 208]
165+
add rax, qword ptr [rbp - 344]
166+
mov qword ptr [rbp - 352], rax
167+
mov rax, qword ptr [rbp - 200]
168+
add rax, qword ptr [rbp - 352]
169+
mov qword ptr [rbp - 360], rax
170+
mov rax, qword ptr [rbp - 192]
171+
add rax, qword ptr [rbp - 360]
172+
mov qword ptr [rbp - 368], rax
173+
mov rax, qword ptr [rbp - 184]
174+
add rax, qword ptr [rbp - 368]
175+
mov qword ptr [rbp - 376], rax
176+
mov rax, qword ptr [rbp - 176]
177+
add rax, qword ptr [rbp - 376]
178+
mov qword ptr [rbp - 384], rax
179+
movabs rax, 2251799813685247
180+
and rax, qword ptr [rbp - 384]
181+
mov qword ptr [rbp - 392], rax
182+
mov rax, qword ptr [rbp - 384]
183+
shr rax, 51
184+
mov byte ptr [rbp - 393], al
185+
mov rax, qword ptr [rbp - 168]
186+
movzx ecx, byte ptr [rbp - 393]
187+
add rax, rcx
188+
mov qword ptr [rbp - 408], rax
189+
mov rax, qword ptr [rbp - 160]
190+
add rax, qword ptr [rbp - 408]
191+
mov qword ptr [rbp - 416], rax
192+
mov rax, qword ptr [rbp - 152]
193+
add rax, qword ptr [rbp - 416]
194+
mov qword ptr [rbp - 424], rax
195+
mov rax, qword ptr [rbp - 144]
196+
add rax, qword ptr [rbp - 424]
197+
mov qword ptr [rbp - 432], rax
198+
mov rax, qword ptr [rbp - 136]
199+
add rax, qword ptr [rbp - 432]
200+
mov qword ptr [rbp - 440], rax
201+
mov rax, qword ptr [rbp - 128]
202+
add rax, qword ptr [rbp - 440]
203+
mov qword ptr [rbp - 448], rax
204+
mov rax, qword ptr [rbp - 120]
205+
add rax, qword ptr [rbp - 448]
206+
mov qword ptr [rbp - 456], rax
207+
movabs rax, 2251799813685247
208+
and rax, qword ptr [rbp - 456]
209+
mov qword ptr [rbp - 464], rax
210+
mov rax, qword ptr [rbp - 456]
211+
shr rax, 51
212+
mov byte ptr [rbp - 465], al
213+
mov rax, qword ptr [rbp - 112]
214+
movzx ecx, byte ptr [rbp - 465]
215+
add rax, rcx
216+
mov qword ptr [rbp - 480], rax
217+
mov rax, qword ptr [rbp - 104]
218+
add rax, qword ptr [rbp - 480]
219+
mov qword ptr [rbp - 488], rax
220+
mov rax, qword ptr [rbp - 96]
221+
add rax, qword ptr [rbp - 488]
222+
mov qword ptr [rbp - 496], rax
223+
mov rax, qword ptr [rbp - 88]
224+
add rax, qword ptr [rbp - 496]
225+
mov qword ptr [rbp - 504], rax
226+
mov rax, qword ptr [rbp - 80]
227+
add rax, qword ptr [rbp - 504]
228+
mov qword ptr [rbp - 512], rax
229+
mov rax, qword ptr [rbp - 72]
230+
add rax, qword ptr [rbp - 512]
231+
mov qword ptr [rbp - 520], rax
232+
movabs rax, 2251799813685247
233+
and rax, qword ptr [rbp - 520]
234+
mov qword ptr [rbp - 528], rax
235+
mov rax, qword ptr [rbp - 520]
236+
shr rax, 51
237+
mov byte ptr [rbp - 529], al
238+
mov rax, qword ptr [rbp - 64]
239+
movzx ecx, byte ptr [rbp - 529]
240+
add rax, rcx
241+
mov qword ptr [rbp - 544], rax
242+
mov rax, qword ptr [rbp - 56]
243+
add rax, qword ptr [rbp - 544]
244+
mov qword ptr [rbp - 552], rax
245+
mov rax, qword ptr [rbp - 48]
246+
add rax, qword ptr [rbp - 552]
247+
mov qword ptr [rbp - 560], rax
248+
mov rax, qword ptr [rbp - 40]
249+
add rax, qword ptr [rbp - 560]
250+
mov qword ptr [rbp - 568], rax
251+
mov rax, qword ptr [rbp - 32]
252+
add rax, qword ptr [rbp - 568]
253+
mov qword ptr [rbp - 576], rax
254+
mov rax, qword ptr [rbp - 24]
255+
add rax, qword ptr [rbp - 576]
256+
mov qword ptr [rbp - 584], rax
257+
mov rcx, qword ptr [rbp - 328]
258+
mov rax, qword ptr [rbp - 8]
259+
mov qword ptr [rax], rcx
260+
mov rcx, qword ptr [rbp - 392]
261+
mov rax, qword ptr [rbp - 8]
262+
mov qword ptr [rax + 8], rcx
263+
mov rcx, qword ptr [rbp - 464]
264+
mov rax, qword ptr [rbp - 8]
265+
mov qword ptr [rax + 16], rcx
266+
mov rcx, qword ptr [rbp - 528]
267+
mov rax, qword ptr [rbp - 8]
268+
mov qword ptr [rax + 24], rcx
269+
mov rcx, qword ptr [rbp - 584]
270+
mov rax, qword ptr [rbp - 8]
271+
mov qword ptr [rax + 32], rcx
272+
add rsp, 456
273+
pop rbp
274+
ret

0 commit comments

Comments
 (0)