annotate dyncall/dyncall_call_x86_generic_masm.asm @ 457:90b1d927912a

- suite_aggrs: make sure random memory used doesn't ever result in NaN fp values (for every possible address), as this messes with result comparison
author Tassilo Philipp
date Fri, 28 Jan 2022 14:11:21 +0100
parents ab2d78e48ca2
children
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 .386
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
3 .MODEL FLAT
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
4 .CODE
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
5 _dcCall_x86_cdecl PROC
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
6 OPTION PROLOGUE:NONE, EPILOGUE:NONE
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
7 push EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
8 mov EBP,ESP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
9 push ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
10 push EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
11 mov ESI,dword ptr [EBP+12]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
12 mov ECX,dword ptr [EBP+16]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
13 add ECX,15
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
14 and ECX,-16
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
15 mov dword ptr [EBP+16],ECX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
16 sub ESP,ECX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
17 mov EDI,ESP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
18 rep movsb
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
19 call dword ptr [EBP+8]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
20 add ESP,dword ptr [EBP+16]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
21 pop EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
22 pop ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
23 mov ESP,EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
24 pop EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
25 ret
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
26 _dcCall_x86_cdecl ENDP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
27 _dcCall_x86_win32_msthis PROC
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
28 OPTION PROLOGUE:NONE, EPILOGUE:NONE
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
29 push EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
30 mov EBP,ESP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
31 push ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
32 push EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
33 mov ESI,dword ptr [EBP+12]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
34 mov ECX,dword ptr [EBP+16]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
35 mov EAX,dword ptr [ESI+0]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
36 add ESI,4
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
37 sub ECX,4
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
38 sub ESP,ECX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
39 mov EDI,ESP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
40 rep movsb
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
41 mov ECX,EAX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
42 call dword ptr [EBP+8]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
43 pop EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
44 pop ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
45 mov ESP,EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
46 pop EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
47 ret
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
48 _dcCall_x86_win32_msthis ENDP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
49 _dcCall_x86_win32_std PROC
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
50 OPTION PROLOGUE:NONE, EPILOGUE:NONE
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
51 push EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
52 mov EBP,ESP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
53 push ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
54 push EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
55 mov ESI,dword ptr [EBP+12]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
56 mov ECX,dword ptr [EBP+16]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
57 sub ESP,ECX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
58 mov EDI,ESP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
59 rep movsb
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
60 call dword ptr [EBP+8]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
61 pop EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
62 pop ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
63 mov ESP,EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
64 pop EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
65 ret
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
66 _dcCall_x86_win32_std ENDP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
67 _dcCall_x86_win32_fast PROC
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
68 OPTION PROLOGUE:NONE, EPILOGUE:NONE
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
69 push EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
70 mov EBP,ESP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
71 push ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
72 push EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
73 mov ESI,dword ptr [EBP+12]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
74 mov ECX,dword ptr [EBP+16]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
75 mov EAX,dword ptr [ESI+0]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
76 mov EDX,dword ptr [ESI+4]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
77 add ESI,8
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
78 sub ECX,8
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
79 mov dword ptr [EBP+16],ECX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
80 sub ESP,ECX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
81 mov EDI,ESP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
82 rep movsb
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
83 mov ECX,EAX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
84 call dword ptr [EBP+8]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
85 pop EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
86 pop ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
87 mov ESP,EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
88 pop EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
89 ret
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
90 _dcCall_x86_win32_fast ENDP
341
ab2d78e48ca2 - gen-masm
Tassilo Philipp
parents: 0
diff changeset
91 _dcCall_x86_syscall_int80h_linux PROC
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
92 OPTION PROLOGUE:NONE, EPILOGUE:NONE
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
93 push EBP
341
ab2d78e48ca2 - gen-masm
Tassilo Philipp
parents: 0
diff changeset
94 mov EBP,ESP
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
95 push EBX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
96 push ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
97 push EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
98 mov EAX,dword ptr [EBP+12]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
99 mov EBX,dword ptr [EAX+0]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
100 mov ECX,dword ptr [EAX+4]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
101 mov EDX,dword ptr [EAX+8]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
102 mov ESI,dword ptr [EAX+12]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
103 mov EDI,dword ptr [EAX+16]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
104 mov EAX,dword ptr [EBP+8]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
105 int 80h
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
106 pop EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
107 pop ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
108 pop EBX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
109 mov ESP,EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
110 pop EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
111 ret
341
ab2d78e48ca2 - gen-masm
Tassilo Philipp
parents: 0
diff changeset
112 _dcCall_x86_syscall_int80h_linux ENDP
ab2d78e48ca2 - gen-masm
Tassilo Philipp
parents: 0
diff changeset
113 _dcCall_x86_syscall_int80h_bsd PROC
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
114 OPTION PROLOGUE:NONE, EPILOGUE:NONE
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
115 push EBP
341
ab2d78e48ca2 - gen-masm
Tassilo Philipp
parents: 0
diff changeset
116 mov EBP,ESP
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
117 push ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
118 push EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
119 mov ESI,dword ptr [EBP+12]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
120 mov ECX,dword ptr [EBP+16]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
121 sub ESP,ECX
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
122 mov EDI,ESP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
123 rep movsb
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
124 mov EAX,dword ptr [EBP+8]
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
125 call _do_int
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
126 pop EDI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
127 pop ESI
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
128 mov ESP,EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
129 pop EBP
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
130 ret
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
131 _do_int:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
132 int 80h
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
133 ret
341
ab2d78e48ca2 - gen-masm
Tassilo Philipp
parents: 0
diff changeset
134 _dcCall_x86_syscall_int80h_bsd ENDP
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
135 END