3 .globl _privateSnippetExecutorGeneral
4 _privateSnippetExecutorGeneral
:
7 pushl
%ebp
# proper stack frame needed for exception handling
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
17 movl
16(%esp
),%eax
# 32bit returnValue
21 .long .-_privateSnippetExecutorGeneral
23 .globl _privateSnippetExecutorVoid
24 _privateSnippetExecutorVoid
:
27 pushl
%ebp
# proper stack frame needed for exception handling
31 pushl $
0 # 32bit null pointer (returnValue not used)
32 pushl
%ecx
# 32bit pCallStack
33 pushl
%edx
# 32bit nVtableOffset
34 pushl
%eax
# 32bit nFunctionIndex
39 .long .-_privateSnippetExecutorVoid
41 .globl _privateSnippetExecutorHyper
42 _privateSnippetExecutorHyper
:
45 pushl
%ebp
# proper stack frame needed for exception handling
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
55 movl
16(%esp
),%eax
# 64bit returnValue, lower half
56 movl
20(%esp
),%edx
# 64bit returnValue, upper half
60 .long .-_privateSnippetExecutorHyper
62 .globl _privateSnippetExecutorFloat
63 _privateSnippetExecutorFloat
:
66 pushl
%ebp
# proper stack frame needed for exception handling
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
76 flds
16(%esp
) # 32bit returnValue
80 .long .-_privateSnippetExecutorFloat
82 .globl _privateSnippetExecutorDouble
83 _privateSnippetExecutorDouble
:
86 pushl
%ebp
# proper stack frame needed for exception handling
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
96 fldl
16(%esp
) # 64bit returnValue
100 .long .-_privateSnippetExecutorDouble
102 .globl _privateSnippetExecutorClass
103 _privateSnippetExecutorClass
:
106 pushl
%ebp
# proper stack frame needed for exception handling
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
120 .long .-_privateSnippetExecutorClass
122 .section .eh_frame,"dr"
124 .long .LECIE1-.LSCIE1 # length
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
138 .byte 0x88 # DW_CFA_offset ret, 1
143 .long .LEFDEg-.LASFDEg # length
145 .long .LASFDEg-.Lframe1 # CIE_pointer
146 .long .LFBg-. # initial_location
147 .long .LFEg-.LFBg # address_range
148 .uleb128 0 # augmentation size 0
150 .byte 0x04 # DW_CFA_advance_loc4
152 .byte 0x0E # DW_CFA_def_cfa_offset 8
154 .byte 0x85 # DW_CFA_offset %ebp, 2
156 .byte 0x04 # DW_CFA_advance_loc4
157 .long .LCFIg1-.LCFIg0
158 .byte 0x0D # DW_CFA_def_cfa_register %ebp
163 .long .LEFDEv-.LASFDEv # length
165 .long .LASFDEv-.Lframe1 # CIE_pointer
166 .long .LFBv-. # initial_location
167 .long .LFEv-.LFBv # address_range
168 .uleb128 0 # augmentation size 0
170 .byte 0x04 # DW_CFA_advance_loc4
172 .byte 0x0E # DW_CFA_def_cfa_offset 8
174 .byte 0x85 # DW_CFA_offset %ebp, 2
176 .byte 0x04 # DW_CFA_advance_loc4
177 .long .LCFIv1-.LCFIv0
178 .byte 0x0D # DW_CFA_def_cfa_register %ebp
183 .long .LEFDEh-.LASFDEh # length
185 .long .LASFDEh-.Lframe1 # CIE_pointer
186 .long .LFBh-. # initial_location
187 .long .LFEh-.LFBh # address_range
188 .uleb128 0 # augmentation size 0
190 .byte 0x04 # DW_CFA_advance_loc4
192 .byte 0x0E # DW_CFA_def_cfa_offset 8
194 .byte 0x85 # DW_CFA_offset %ebp, 2
196 .byte 0x04 # DW_CFA_advance_loc4
197 .long .LCFIh1-.LCFIh0
198 .byte 0x0D # DW_CFA_def_cfa_register %ebp
203 .long .LEFDEf-.LASFDEf # length
205 .long .LASFDEf-.Lframe1 # CIE_pointer
206 .long .LFBf-. # initial_location
207 .long .LFEf-.LFBf # address_range
208 .uleb128 0 # augmentation size 0
210 .byte 0x04 # DW_CFA_advance_loc4
212 .byte 0x0E # DW_CFA_def_cfa_offset 8
214 .byte 0x85 # DW_CFA_offset %ebp, 2
216 .byte 0x04 # DW_CFA_advance_loc4
217 .long .LCFIf1-.LCFIf0
218 .byte 0x0D # DW_CFA_def_cfa_register %ebp
223 .long .LEFDEd-.LASFDEd # length
225 .long .LASFDEd-.Lframe1 # CIE_pointer
226 .long .LFBd-. # initial_location
227 .long .LFEd-.LFBd # address_range
228 .uleb128 0 # augmentation size 0
230 .byte 0x04 # DW_CFA_advance_loc4
232 .byte 0x0E # DW_CFA_def_cfa_offset 8
234 .byte 0x85 # DW_CFA_offset %ebp, 2
236 .byte 0x04 # DW_CFA_advance_loc4
237 .long .LCFId1-.LCFId0
238 .byte 0x0D # DW_CFA_def_cfa_register %ebp
243 .long .LEFDEc-.LASFDEc # length
245 .long .LASFDEc-.Lframe1 # CIE_pointer
246 .long .LFBc-. # initial_location
247 .long .LFEc-.LFBc # address_range
248 .uleb128 0 # augmentation size 0
250 .byte 0x04 # DW_CFA_advance_loc4
252 .byte 0x0E # DW_CFA_def_cfa_offset 8
254 .byte 0x85 # DW_CFA_offset %ebp, 2
256 .byte 0x04 # DW_CFA_advance_loc4
257 .long .LCFIc1-.LCFIc0
258 .byte 0x0D # DW_CFA_def_cfa_register %ebp