summaryrefslogtreecommitdiff
path: root/bridges/source/cpp_uno/gcc3_macosx_intel/call.s
diff options
context:
space:
mode:
Diffstat (limited to 'bridges/source/cpp_uno/gcc3_macosx_intel/call.s')
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/call.s327
1 files changed, 327 insertions, 0 deletions
diff --git a/bridges/source/cpp_uno/gcc3_macosx_intel/call.s b/bridges/source/cpp_uno/gcc3_macosx_intel/call.s
new file mode 100644
index 000000000000..814af56f4c34
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_macosx_intel/call.s
@@ -0,0 +1,327 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+ .text
+
+.align 1, 0x90
+.globl _privateSnippetExecutorGeneral
+_privateSnippetExecutorGeneral:
+LFBg:
+ movl %esp,%ecx
+ pushl %ebp # proper stack frame needed for exception handling
+LCFIg0:
+ movl %esp,%ebp
+LCFIg1:
+ subl $0x8,%esp # padding + 32bit returnValue
+ pushl %esp # 32bit &returnValue
+ pushl %ecx # 32bit pCallStack
+ pushl %edx # 32bit nVtableOffset
+ pushl %eax # 32bit nFunctionIndex
+ call L_cpp_vtable_call$stub
+ movl 16(%esp),%eax # 32bit returnValue
+ leave
+ ret
+LFEg:
+ .long .-_privateSnippetExecutorGeneral
+
+.align 1, 0x90
+.globl _privateSnippetExecutorVoid
+_privateSnippetExecutorVoid:
+LFBv:
+ movl %esp,%ecx
+ pushl %ebp # proper stack frame needed for exception handling
+LCFIv0:
+ movl %esp,%ebp
+LCFIv1:
+ sub $8,%esp # padding
+ pushl $0 # 32bit null pointer (returnValue not used)
+ pushl %ecx # 32bit pCallStack
+ pushl %edx # 32bit nVtableOffset
+ pushl %eax # 32bit nFunctionIndex
+ call L_cpp_vtable_call$stub
+ leave
+ ret
+LFEv:
+ .long .-_privateSnippetExecutorVoid
+
+.align 1, 0x90
+.globl _privateSnippetExecutorHyper
+_privateSnippetExecutorHyper:
+LFBh:
+ movl %esp,%ecx
+ pushl %ebp # proper stack frame needed for exception handling
+LCFIh0:
+ movl %esp,%ebp
+LCFIh1:
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
+ pushl %ecx # 32bit pCallStack
+ pushl %edx # 32bit nVtableOffset
+ pushl %eax # 32bit nFunctionIndex
+ call L_cpp_vtable_call$stub
+ movl 16(%esp),%eax # 64bit returnValue, lower half
+ movl 20(%esp),%edx # 64bit returnValue, upper half
+ leave
+ ret
+LFEh:
+ .long .-_privateSnippetExecutorHyper
+
+.align 1, 0x90
+.globl _privateSnippetExecutorFloat
+_privateSnippetExecutorFloat:
+LFBf:
+ movl %esp,%ecx
+ pushl %ebp # proper stack frame needed for exception handling
+LCFIf0:
+ movl %esp,%ebp
+LCFIf1:
+ subl $0x8,%esp # padding + 32bit returnValue
+ pushl %esp # 32bit &returnValue
+ pushl %ecx # 32bit pCallStack
+ pushl %edx # 32bit nVtableOffset
+ pushl %eax # 32bit nFunctionIndex
+ call L_cpp_vtable_call$stub
+ flds 16(%esp) # 32bit returnValue
+ leave
+ ret
+LFEf:
+ .long .-_privateSnippetExecutorFloat
+
+.align 1, 0x90
+.globl _privateSnippetExecutorDouble
+_privateSnippetExecutorDouble:
+LFBd:
+ movl %esp,%ecx
+ pushl %ebp # proper stack frame needed for exception handling
+LCFId0:
+ movl %esp,%ebp
+LCFId1:
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
+ pushl %ecx # 32bit pCallStack
+ pushl %edx # 32bit nVtableOffset
+ pushl %eax # 32bit nFunctionIndex
+ call L_cpp_vtable_call$stub
+ fldl 16(%esp) # 64bit returnValue
+ leave
+ ret
+LFEd:
+ .long .-_privateSnippetExecutorDouble
+
+.align 1, 0x90
+.globl _privateSnippetExecutorClass
+_privateSnippetExecutorClass:
+LFBc:
+ movl %esp,%ecx
+ pushl %ebp # proper stack frame needed for exception handling
+LCFIc0:
+ movl %esp,%ebp
+LCFIc1:
+ subl $0x8,%esp # padding + 32bit returnValue
+ pushl %esp # 32bit &returnValue
+ pushl %ecx # 32bit pCallStack
+ pushl %edx # 32bit nVtableOffset
+ pushl %eax # 32bit nFunctionIndex
+ call L_cpp_vtable_call$stub
+ movl 16(%esp),%eax # 32bit returnValue
+ leave
+ ret $4
+LFEc:
+ .long .-_privateSnippetExecutorClass
+
+ .section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support
+EH_frame1:
+ .set L$set$frame1,LECIE1-LSCIE1
+ .long L$set$frame1 # length
+LSCIE1:
+ .long 0 # CIE_ID
+ .byte 1 # version
+ .ascii "zPR\0" # augmentation
+ .byte 1 # code_alignment_factor (.uleb128 1)
+ .byte 0x7c # data_alignment_factor (.sleb128 -4)
+ .byte 8 # return_address_register
+ .byte 0x6 # augmentation size 7:
+ .byte 0x9b # ???
+ .long L___gxx_personality_v0$non_lazy_ptr-.
+ .byte 0x10
+ # initial_instructions:
+ .byte 0x0C # DW_CFA_def_cfa %esp, 4
+ .byte 5
+ .byte 4
+ .byte 0x88 # DW_CFA_offset ret, 1
+ .byte 1
+ .align 2
+LECIE1:
+ .globl _privateSnippetExecutorGeneral.eh
+_privateSnippetExecutorGeneral.eh:
+LSFDEg:
+ .set L$set$g1,LEFDEg-LASFDEg
+ .long L$set$g1 # length
+LASFDEg:
+ .long LASFDEg-EH_frame1 # CIE_pointer
+ .long LFBg-. # initial_location
+ .long LFEg-LFBg # address_range
+ .byte 0 # augmentation size 0
+ # instructions:
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFIg0-LFBg
+ .byte 0x0E # DW_CFA_def_cfa_offset 8
+ .byte 8
+ .byte 0x84 # DW_CFA_offset %ebp, 2
+ .byte 2
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFIg1-LCFIg0
+ .byte 0x0D # DW_CFA_def_cfa_register %ebp
+ .byte 4
+ .align 2
+LEFDEg:
+ .globl _privateSnippetExecutorVoid.eh
+_privateSnippetExecutorVoid.eh:
+LSFDEv:
+ .set L$set$v1,LEFDEv-LASFDEv
+ .long L$set$v1 # length
+LASFDEv:
+ .long LASFDEv-EH_frame1 # CIE_pointer
+ .long LFBv-. # initial_location
+ .long LFEv-LFBv # address_range
+ .byte 0 # augmentation size 0
+ # instructions:
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFIv0-LFBv
+ .byte 0x0E # DW_CFA_def_cfa_offset 8
+ .byte 8
+ .byte 0x84 # DW_CFA_offset %ebp, 2
+ .byte 2
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFIv1-LCFIv0
+ .byte 0x0D # DW_CFA_def_cfa_register %ebp
+ .byte 4
+ .align 2
+LEFDEv:
+ .globl _privateSnippetExecutorHyper.eh
+_privateSnippetExecutorHyper.eh:
+LSFDEh:
+ .set L$set$h1,LEFDEh-LASFDEh
+ .long L$set$h1 # length
+LASFDEh:
+ .long LASFDEh-EH_frame1 # CIE_pointer
+ .long LFBh-. # initial_location
+ .long LFEh-LFBh # address_range
+ .byte 0 # augmentation size 0
+ # instructions:
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFIh0-LFBh
+ .byte 0x0E # DW_CFA_def_cfa_offset 8
+ .byte 8
+ .byte 0x84 # DW_CFA_offset %ebp, 2
+ .byte 2
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFIh1-LCFIh0
+ .byte 0x0D # DW_CFA_def_cfa_register %ebp
+ .byte 4
+ .align 2
+LEFDEh:
+ .globl _privateSnippetExecutorFloat.eh
+_privateSnippetExecutorFloat.eh:
+LSFDEf:
+ .set L$set$f1,LEFDEf-LASFDEf
+ .long L$set$f1 # length
+LASFDEf:
+ .long LASFDEf-EH_frame1 # CIE_pointer
+ .long LFBf-. # initial_location
+ .long LFEf-LFBf # address_range
+ .byte 0 # augmentation size 0
+ # instructions:
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFIf0-LFBf
+ .byte 0x0E # DW_CFA_def_cfa_offset 8
+ .byte 8
+ .byte 0x84 # DW_CFA_offset %ebp, 2
+ .byte 2
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFIf1-LCFIf0
+ .byte 0x0D # DW_CFA_def_cfa_register %ebp
+ .byte 4
+ .align 2
+LEFDEf:
+ .globl _privateSnippetExecutorDouble.eh
+_privateSnippetExecutorDouble.eh:
+LSFDEd:
+ .set L$set$d1,LEFDEd-LASFDEd
+ .long L$set$d1 # length
+LASFDEd:
+ .long LASFDEd-EH_frame1 # CIE_pointer
+ .long LFBd-. # initial_location
+ .long LFEd-LFBd # address_range
+ .byte 0 # augmentation size 0
+ # instructions:
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFId0-LFBd
+ .byte 0x0E # DW_CFA_def_cfa_offset 8
+ .byte 8
+ .byte 0x84 # DW_CFA_offset %ebp, 2
+ .byte 2
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFId1-LCFId0
+ .byte 0x0D # DW_CFA_def_cfa_register %ebp
+ .byte 4
+ .align 2
+LEFDEd:
+ .globl _privateSnippetExecutorClass.eh
+_privateSnippetExecutorClass.eh:
+LSFDEc:
+ .set L$set$c1,LEFDEc-LASFDEc
+ .long L$set$c1 # length
+LASFDEc:
+ .long LASFDEc-EH_frame1 # CIE_pointer
+ .long LFBc-. # initial_location
+ .long LFEc-LFBc # address_range
+ .byte 0 # augmentation size 0
+ # instructions:
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFIc0-LFBc
+ .byte 0x0E # DW_CFA_def_cfa_offset 8
+ .byte 8
+ .byte 0x84 # DW_CFA_offset %ebp, 2
+ .byte 2
+ .byte 0x04 # DW_CFA_advance_loc4
+ .long LCFIc1-LCFIc0
+ .byte 0x0D # DW_CFA_def_cfa_register %ebp
+ .byte 4
+ .align 2
+LEFDEc:
+ .section __IMPORT,__jump_table,symbol_stubs,self_modifying_code+pure_instructions,5
+L_cpp_vtable_call$stub:
+ .indirect_symbol _cpp_vtable_call
+ hlt ; hlt ; hlt ; hlt ; hlt
+ .section __IMPORT,__pointers,non_lazy_symbol_pointers
+L___gxx_personality_v0$non_lazy_ptr:
+ .indirect_symbol ___gxx_personality_v0
+ .long 0
+ .constructor
+ .destructor
+ .align 1
+ .subsections_via_symbols