comparison dyncall/dyncall_call_x64_generic_masm.asm @ 0:3e629dc19168

initial from svn dyncall-1745
author Daniel Adler
date Thu, 19 Mar 2015 22:24:28 +0100
parents
children ab2d78e48ca2
comparison
equal deleted inserted replaced
-1:000000000000 0:3e629dc19168
1 ; auto-generated by gen-masm.sh
2 .CODE
3
4 dcCall_x64_sysv PROC
5 OPTION PROLOGUE:NONE, EPILOGUE:NONE
6 push RBP
7 push RBX
8 mov RBP,RSP
9 mov RBX,R8
10 movsd XMM0,qword ptr [RCX+0]
11 movsd XMM1,qword ptr [RCX+8]
12 movsd XMM2,qword ptr [RCX+16]
13 movsd XMM3,qword ptr [RCX+24]
14 movsd XMM4,qword ptr [RCX+32]
15 movsd XMM5,qword ptr [RCX+40]
16 movsd XMM6,qword ptr [RCX+48]
17 movsd XMM7,qword ptr [RCX+56]
18 add RDI,31
19 and RDI,-32
20 add RDI,8
21 sub RSP,RDI
22 mov RCX,RDI
23 mov RDI,RSP
24 rep movsb
25 mov RDI,qword ptr [RDX+0]
26 mov RSI,qword ptr [RDX+8]
27 mov RCX,qword ptr [RDX+24]
28 mov R8,qword ptr [RDX+32]
29 mov R9,qword ptr [RDX+40]
30 mov RDX,qword ptr [RDX+16]
31 mov AL,8
32 call RBX
33 mov RSP,RBP
34 pop RBX
35 pop RBP
36 ret
37 dcCALl_x64_sysv ENDP
38 dcCall_x64_win64 PROC
39 OPTION PROLOGUE:NONE, EPILOGUE:NONE
40 push RBP
41 push RSI
42 push RDI
43 mov RBP,RSP
44 add RCX,15
45 and RCX,-16
46 sub RSP,RCX
47 mov RSI,RDX
48 mov RDI,RSP
49 mov RAX,R9
50 rep movsb
51 mov RCX,qword ptr [R8+0]
52 mov RDX,qword ptr [R8+8]
53 mov R9,qword ptr [R8+24]
54 mov R8,qword ptr [R8+16]
55 movd XMM0,RCX
56 movd XMM1,RDX
57 movd XMM2,R8
58 movd XMM3,R9
59 push R9
60 push R8
61 push RDX
62 push RCX
63 call RAX
64 mov RSP,RBP
65 pop RDI
66 pop RSI
67 pop RBP
68 ret
69 dcCall_x64_win64 ENDP
70 END