annotate dyncallback/dyncall_callback_x64_masm.asm @ 357:d982a00c2177

- PPC64 asm syntax fix, specifying explicitly comparison mode for cmpi (newer toolchains complain, older ones took optional field of instruction which happened to be same value)
author Tassilo Philipp
date Tue, 25 Feb 2020 18:16:13 +0100
parents 3e629dc19168
children 71c884e610f0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
1 ; auto-generated by gen-masm.sh
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
2 .CODE
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
3 DCThunk_size = 24
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
4 DCArgs_size_win64 = 80
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
5 DCArgs_size_sysv = 128
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
6 DCValue_size = 8
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
7 FRAME_arg0_win64 = 48
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
8 FRAME_arg0_sysv = 16
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
9 FRAME_return = 8
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
10 FRAME_parent = 0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
11 FRAME_DCArgs_sysv = -128
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
12 FRAME_DCValue_sysv = -136
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
13 FRAME_DCArgs_win64 = -80
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
14 FRAME_DCValue_win64 = -80
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
15 CTX_thunk = 0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
16 CTX_handler = 24
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
17 CTX_userdata = 32
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
18 DCCallback_size = 40
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
19 dcCallback_x64_sysv PROC
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
20 OPTION PROLOGUE:NONE, EPILOGUE:NONE
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
21 push RBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
22 mov RBP,RSP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
23 sub RSP,8*8
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
24 movsd qword ptr [RSP+8*7],XMM7
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
25 movsd qword ptr [RSP+8*6],XMM6
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
26 movsd qword ptr [RSP+8*5],XMM5
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
27 movsd qword ptr [RSP+8*4],XMM4
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
28 movsd qword ptr [RSP+8*3],XMM3
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
29 movsd qword ptr [RSP+8*2],XMM2
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
30 movsd qword ptr [RSP+8*1],XMM1
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
31 movsd qword ptr [RSP+8*0],XMM0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
32 push R9
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
33 push R8
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
34 push RCX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
35 push RDX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
36 push RSI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
37 push RDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
38 push 0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
39 lea RDX,qword ptr [RBP+FRAME_arg0_sysv]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
40 push RDX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
41 mov RSI,RSP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
42 push 0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
43 mov RDI,RAX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
44 mov RCX,qword ptr [RDI+CTX_userdata]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
45 mov RDX,RSP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
46 push 0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
47 call qword ptr [RAX+CTX_handler]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
48 mov RAX,qword ptr [RBP+FRAME_DCValue_sysv]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
49 movd XMM0,RAX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
50 mov RSP,RBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
51 pop RBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
52 ret
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
53 dcCallback_x64_sysv ENDP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
54 dcCallback_x64_win64 PROC
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
55 OPTION PROLOGUE:NONE, EPILOGUE:NONE
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
56 push RBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
57 mov RBP,RSP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
58 sub RSP,4*8
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
59 movsd qword ptr [RSP+8*3],XMM3
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
60 movsd qword ptr [RSP+8*2],XMM2
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
61 movsd qword ptr [RSP+8*1],XMM1
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
62 movsd qword ptr [RSP+8*0],XMM0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
63 push R9
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
64 push R8
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
65 push RDX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
66 push RCX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
67 push 0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
68 lea RDX,qword ptr [RBP+FRAME_arg0_win64]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
69 push RDX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
70 mov RDX,RSP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
71 mov RCX,RAX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
72 mov R9,qword ptr [RAX+CTX_userdata]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
73 mov R8,RSP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
74 sub RSP,4*8
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
75 call qword ptr [RAX+CTX_handler]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
76 mov RAX,qword ptr [RBP+FRAME_DCValue_win64]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
77 movd XMM0,RAX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
78 mov RSP,RBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
79 pop RBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
80 ret
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
81 dcCallback_x64_win64 ENDP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
82 END