merge the formfield patch from ooo-build
[ooovba.git] / bridges / source / cpp_uno / mingw_intel / call.s
blob47327d9a46500e3687dc9308ed0f5010fcedf93d
1 .text
3 .globl _privateSnippetExecutorGeneral
4 _privateSnippetExecutorGeneral:
5 .LFBg:
6 movl %esp,%ecx
7 pushl %ebp # proper stack frame needed for exception handling
8 .LCFIg0:
9 movl %esp,%ebp
10 .LCFIg1:
11 subl $0x4,%esp # 32bit returnValue
12 pushl %esp # 32bit &returnValue
13 pushl %ecx # 32bit pCallStack
14 pushl %edx # 32bit nVtableOffset
15 pushl %eax # 32bit nFunctionIndex
16 call _cpp_vtable_call
17 movl 16(%esp),%eax # 32bit returnValue
18 leave
19 ret
20 .LFEg:
21 .long .-_privateSnippetExecutorGeneral
23 .globl _privateSnippetExecutorVoid
24 _privateSnippetExecutorVoid:
25 .LFBv:
26 movl %esp,%ecx
27 pushl %ebp # proper stack frame needed for exception handling
28 .LCFIv0:
29 movl %esp,%ebp
30 .LCFIv1:
31 pushl $0 # 32bit null pointer (returnValue not used)
32 pushl %ecx # 32bit pCallStack
33 pushl %edx # 32bit nVtableOffset
34 pushl %eax # 32bit nFunctionIndex
35 call _cpp_vtable_call
36 leave
37 ret
38 .LFEv:
39 .long .-_privateSnippetExecutorVoid
41 .globl _privateSnippetExecutorHyper
42 _privateSnippetExecutorHyper:
43 .LFBh:
44 movl %esp,%ecx
45 pushl %ebp # proper stack frame needed for exception handling
46 .LCFIh0:
47 movl %esp,%ebp
48 .LCFIh1:
49 subl $0x8,%esp # 64bit returnValue
50 pushl %esp # 32bit &returnValue
51 pushl %ecx # 32bit pCallStack
52 pushl %edx # 32bit nVtableOffset
53 pushl %eax # 32bit nFunctionIndex
54 call _cpp_vtable_call
55 movl 16(%esp),%eax # 64bit returnValue, lower half
56 movl 20(%esp),%edx # 64bit returnValue, upper half
57 leave
58 ret
59 .LFEh:
60 .long .-_privateSnippetExecutorHyper
62 .globl _privateSnippetExecutorFloat
63 _privateSnippetExecutorFloat:
64 .LFBf:
65 movl %esp,%ecx
66 pushl %ebp # proper stack frame needed for exception handling
67 .LCFIf0:
68 movl %esp,%ebp
69 .LCFIf1:
70 subl $0x4,%esp # 32bit returnValue
71 pushl %esp # 32bit &returnValue
72 pushl %ecx # 32bit pCallStack
73 pushl %edx # 32bit nVtableOffset
74 pushl %eax # 32bit nFunctionIndex
75 call _cpp_vtable_call
76 flds 16(%esp) # 32bit returnValue
77 leave
78 ret
79 .LFEf:
80 .long .-_privateSnippetExecutorFloat
82 .globl _privateSnippetExecutorDouble
83 _privateSnippetExecutorDouble:
84 .LFBd:
85 movl %esp,%ecx
86 pushl %ebp # proper stack frame needed for exception handling
87 .LCFId0:
88 movl %esp,%ebp
89 .LCFId1:
90 subl $0x8,%esp # 64bit returnValue
91 pushl %esp # 32bit &returnValue
92 pushl %ecx # 32bit pCallStack
93 pushl %edx # 32bit nVtableOffset
94 pushl %eax # 32bit nFunctionIndex
95 call _cpp_vtable_call
96 fldl 16(%esp) # 64bit returnValue
97 leave
98 ret
99 .LFEd:
100 .long .-_privateSnippetExecutorDouble
102 .globl _privateSnippetExecutorClass
103 _privateSnippetExecutorClass:
104 .LFBc:
105 movl %esp,%ecx
106 pushl %ebp # proper stack frame needed for exception handling
107 .LCFIc0:
108 movl %esp,%ebp
109 .LCFIc1:
110 subl $0x4,%esp # 32bit returnValue
111 pushl %esp # 32bit &returnValue
112 pushl %ecx # 32bit pCallStack
113 pushl %edx # 32bit nVtableOffset
114 pushl %eax # 32bit nFunctionIndex
115 call _cpp_vtable_call
116 movl 16(%esp),%eax # 32bit returnValue
117 leave
118 ret $4
119 .LFEc:
120 .long .-_privateSnippetExecutorClass
122 .section .eh_frame,"dr"
123 .Lframe1:
124 .long .LECIE1-.LSCIE1 # length
125 .LSCIE1:
126 .long 0 # CIE_ID
127 .byte 1 # version
128 .string "zR" # augmentation
129 .uleb128 1 # code_alignment_factor
130 .sleb128 -4 # data_alignment_factor
131 .byte 8 # return_address_register
132 .uleb128 1 # augmentation size 1:
133 .byte 0x1B # FDE Encoding (pcrel sdata4)
134 # initial_instructions:
135 .byte 0x0C # DW_CFA_def_cfa %esp, 4
136 .uleb128 4
137 .uleb128 4
138 .byte 0x88 # DW_CFA_offset ret, 1
139 .uleb128 1
140 .align 4
141 .LECIE1:
142 .LSFDEg:
143 .long .LEFDEg-.LASFDEg # length
144 .LASFDEg:
145 .long .LASFDEg-.Lframe1 # CIE_pointer
146 .long .LFBg-. # initial_location
147 .long .LFEg-.LFBg # address_range
148 .uleb128 0 # augmentation size 0
149 # instructions:
150 .byte 0x04 # DW_CFA_advance_loc4
151 .long .LCFIg0-.LFBg
152 .byte 0x0E # DW_CFA_def_cfa_offset 8
153 .uleb128 8
154 .byte 0x85 # DW_CFA_offset %ebp, 2
155 .uleb128 2
156 .byte 0x04 # DW_CFA_advance_loc4
157 .long .LCFIg1-.LCFIg0
158 .byte 0x0D # DW_CFA_def_cfa_register %ebp
159 .uleb128 5
160 .align 4
161 .LEFDEg:
162 .LSFDEv:
163 .long .LEFDEv-.LASFDEv # length
164 .LASFDEv:
165 .long .LASFDEv-.Lframe1 # CIE_pointer
166 .long .LFBv-. # initial_location
167 .long .LFEv-.LFBv # address_range
168 .uleb128 0 # augmentation size 0
169 # instructions:
170 .byte 0x04 # DW_CFA_advance_loc4
171 .long .LCFIv0-.LFBv
172 .byte 0x0E # DW_CFA_def_cfa_offset 8
173 .uleb128 8
174 .byte 0x85 # DW_CFA_offset %ebp, 2
175 .uleb128 2
176 .byte 0x04 # DW_CFA_advance_loc4
177 .long .LCFIv1-.LCFIv0
178 .byte 0x0D # DW_CFA_def_cfa_register %ebp
179 .uleb128 5
180 .align 4
181 .LEFDEv:
182 .LSFDEh:
183 .long .LEFDEh-.LASFDEh # length
184 .LASFDEh:
185 .long .LASFDEh-.Lframe1 # CIE_pointer
186 .long .LFBh-. # initial_location
187 .long .LFEh-.LFBh # address_range
188 .uleb128 0 # augmentation size 0
189 # instructions:
190 .byte 0x04 # DW_CFA_advance_loc4
191 .long .LCFIh0-.LFBh
192 .byte 0x0E # DW_CFA_def_cfa_offset 8
193 .uleb128 8
194 .byte 0x85 # DW_CFA_offset %ebp, 2
195 .uleb128 2
196 .byte 0x04 # DW_CFA_advance_loc4
197 .long .LCFIh1-.LCFIh0
198 .byte 0x0D # DW_CFA_def_cfa_register %ebp
199 .uleb128 5
200 .align 4
201 .LEFDEh:
202 .LSFDEf:
203 .long .LEFDEf-.LASFDEf # length
204 .LASFDEf:
205 .long .LASFDEf-.Lframe1 # CIE_pointer
206 .long .LFBf-. # initial_location
207 .long .LFEf-.LFBf # address_range
208 .uleb128 0 # augmentation size 0
209 # instructions:
210 .byte 0x04 # DW_CFA_advance_loc4
211 .long .LCFIf0-.LFBf
212 .byte 0x0E # DW_CFA_def_cfa_offset 8
213 .uleb128 8
214 .byte 0x85 # DW_CFA_offset %ebp, 2
215 .uleb128 2
216 .byte 0x04 # DW_CFA_advance_loc4
217 .long .LCFIf1-.LCFIf0
218 .byte 0x0D # DW_CFA_def_cfa_register %ebp
219 .uleb128 5
220 .align 4
221 .LEFDEf:
222 .LSFDEd:
223 .long .LEFDEd-.LASFDEd # length
224 .LASFDEd:
225 .long .LASFDEd-.Lframe1 # CIE_pointer
226 .long .LFBd-. # initial_location
227 .long .LFEd-.LFBd # address_range
228 .uleb128 0 # augmentation size 0
229 # instructions:
230 .byte 0x04 # DW_CFA_advance_loc4
231 .long .LCFId0-.LFBd
232 .byte 0x0E # DW_CFA_def_cfa_offset 8
233 .uleb128 8
234 .byte 0x85 # DW_CFA_offset %ebp, 2
235 .uleb128 2
236 .byte 0x04 # DW_CFA_advance_loc4
237 .long .LCFId1-.LCFId0
238 .byte 0x0D # DW_CFA_def_cfa_register %ebp
239 .uleb128 5
240 .align 4
241 .LEFDEd:
242 .LSFDEc:
243 .long .LEFDEc-.LASFDEc # length
244 .LASFDEc:
245 .long .LASFDEc-.Lframe1 # CIE_pointer
246 .long .LFBc-. # initial_location
247 .long .LFEc-.LFBc # address_range
248 .uleb128 0 # augmentation size 0
249 # instructions:
250 .byte 0x04 # DW_CFA_advance_loc4
251 .long .LCFIc0-.LFBc
252 .byte 0x0E # DW_CFA_def_cfa_offset 8
253 .uleb128 8
254 .byte 0x85 # DW_CFA_offset %ebp, 2
255 .uleb128 2
256 .byte 0x04 # DW_CFA_advance_loc4
257 .long .LCFIc1-.LCFIc0
258 .byte 0x0D # DW_CFA_def_cfa_register %ebp
259 .uleb128 5
260 .align 4
261 .LEFDEc: