| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| .text |
| |
| .globl _privateSnippetExecutorGeneral |
| _privateSnippetExecutorGeneral: |
| .LFBg: |
| movl %esp,%ecx |
| pushl %ebp # proper stack frame needed for exception handling |
| .LCFIg0: |
| movl %esp,%ebp |
| .LCFIg1: |
| subl $0x4,%esp # 32bit returnValue |
| pushl %esp # 32bit &returnValue |
| pushl %ecx # 32bit pCallStack |
| pushl %edx # 32bit nVtableOffset |
| pushl %eax # 32bit nFunctionIndex |
| call _cpp_vtable_call |
| movl 16(%esp),%eax # 32bit returnValue |
| leave |
| ret |
| .LFEg: |
| .long .-_privateSnippetExecutorGeneral |
| |
| .globl _privateSnippetExecutorVoid |
| _privateSnippetExecutorVoid: |
| .LFBv: |
| movl %esp,%ecx |
| pushl %ebp # proper stack frame needed for exception handling |
| .LCFIv0: |
| movl %esp,%ebp |
| .LCFIv1: |
| pushl $0 # 32bit null pointer (returnValue not used) |
| pushl %ecx # 32bit pCallStack |
| pushl %edx # 32bit nVtableOffset |
| pushl %eax # 32bit nFunctionIndex |
| call _cpp_vtable_call |
| leave |
| ret |
| .LFEv: |
| .long .-_privateSnippetExecutorVoid |
| |
| .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 _cpp_vtable_call |
| movl 16(%esp),%eax # 64bit returnValue, lower half |
| movl 20(%esp),%edx # 64bit returnValue, upper half |
| leave |
| ret |
| .LFEh: |
| .long .-_privateSnippetExecutorHyper |
| |
| .globl _privateSnippetExecutorFloat |
| _privateSnippetExecutorFloat: |
| .LFBf: |
| movl %esp,%ecx |
| pushl %ebp # proper stack frame needed for exception handling |
| .LCFIf0: |
| movl %esp,%ebp |
| .LCFIf1: |
| subl $0x4,%esp # 32bit returnValue |
| pushl %esp # 32bit &returnValue |
| pushl %ecx # 32bit pCallStack |
| pushl %edx # 32bit nVtableOffset |
| pushl %eax # 32bit nFunctionIndex |
| call _cpp_vtable_call |
| flds 16(%esp) # 32bit returnValue |
| leave |
| ret |
| .LFEf: |
| .long .-_privateSnippetExecutorFloat |
| |
| .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 _cpp_vtable_call |
| fldl 16(%esp) # 64bit returnValue |
| leave |
| ret |
| .LFEd: |
| .long .-_privateSnippetExecutorDouble |
| |
| .globl _privateSnippetExecutorClass |
| _privateSnippetExecutorClass: |
| .LFBc: |
| movl %esp,%ecx |
| pushl %ebp # proper stack frame needed for exception handling |
| .LCFIc0: |
| movl %esp,%ebp |
| .LCFIc1: |
| subl $0x4,%esp # 32bit returnValue |
| pushl %esp # 32bit &returnValue |
| pushl %ecx # 32bit pCallStack |
| pushl %edx # 32bit nVtableOffset |
| pushl %eax # 32bit nFunctionIndex |
| call _cpp_vtable_call |
| movl 16(%esp),%eax # 32bit returnValue |
| leave |
| ret $4 |
| .LFEc: |
| .long .-_privateSnippetExecutorClass |
| |
| .section .eh_frame,"dr" |
| .Lframe1: |
| .long .LECIE1-.LSCIE1 # length |
| .LSCIE1: |
| .long 0 # CIE_ID |
| .byte 1 # version |
| .string "zR" # augmentation |
| .uleb128 1 # code_alignment_factor |
| .sleb128 -4 # data_alignment_factor |
| .byte 8 # return_address_register |
| .uleb128 1 # augmentation size 1: |
| .byte 0x1B # FDE Encoding (pcrel sdata4) |
| # initial_instructions: |
| .byte 0x0C # DW_CFA_def_cfa %esp, 4 |
| .uleb128 4 |
| .uleb128 4 |
| .byte 0x88 # DW_CFA_offset ret, 1 |
| .uleb128 1 |
| .align 4 |
| .LECIE1: |
| .LSFDEg: |
| .long .LEFDEg-.LASFDEg # length |
| .LASFDEg: |
| .long .LASFDEg-.Lframe1 # CIE_pointer |
| .long .LFBg-. # initial_location |
| .long .LFEg-.LFBg # address_range |
| .uleb128 0 # augmentation size 0 |
| # instructions: |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFIg0-.LFBg |
| .byte 0x0E # DW_CFA_def_cfa_offset 8 |
| .uleb128 8 |
| .byte 0x85 # DW_CFA_offset %ebp, 2 |
| .uleb128 2 |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFIg1-.LCFIg0 |
| .byte 0x0D # DW_CFA_def_cfa_register %ebp |
| .uleb128 5 |
| .align 4 |
| .LEFDEg: |
| .LSFDEv: |
| .long .LEFDEv-.LASFDEv # length |
| .LASFDEv: |
| .long .LASFDEv-.Lframe1 # CIE_pointer |
| .long .LFBv-. # initial_location |
| .long .LFEv-.LFBv # address_range |
| .uleb128 0 # augmentation size 0 |
| # instructions: |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFIv0-.LFBv |
| .byte 0x0E # DW_CFA_def_cfa_offset 8 |
| .uleb128 8 |
| .byte 0x85 # DW_CFA_offset %ebp, 2 |
| .uleb128 2 |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFIv1-.LCFIv0 |
| .byte 0x0D # DW_CFA_def_cfa_register %ebp |
| .uleb128 5 |
| .align 4 |
| .LEFDEv: |
| .LSFDEh: |
| .long .LEFDEh-.LASFDEh # length |
| .LASFDEh: |
| .long .LASFDEh-.Lframe1 # CIE_pointer |
| .long .LFBh-. # initial_location |
| .long .LFEh-.LFBh # address_range |
| .uleb128 0 # augmentation size 0 |
| # instructions: |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFIh0-.LFBh |
| .byte 0x0E # DW_CFA_def_cfa_offset 8 |
| .uleb128 8 |
| .byte 0x85 # DW_CFA_offset %ebp, 2 |
| .uleb128 2 |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFIh1-.LCFIh0 |
| .byte 0x0D # DW_CFA_def_cfa_register %ebp |
| .uleb128 5 |
| .align 4 |
| .LEFDEh: |
| .LSFDEf: |
| .long .LEFDEf-.LASFDEf # length |
| .LASFDEf: |
| .long .LASFDEf-.Lframe1 # CIE_pointer |
| .long .LFBf-. # initial_location |
| .long .LFEf-.LFBf # address_range |
| .uleb128 0 # augmentation size 0 |
| # instructions: |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFIf0-.LFBf |
| .byte 0x0E # DW_CFA_def_cfa_offset 8 |
| .uleb128 8 |
| .byte 0x85 # DW_CFA_offset %ebp, 2 |
| .uleb128 2 |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFIf1-.LCFIf0 |
| .byte 0x0D # DW_CFA_def_cfa_register %ebp |
| .uleb128 5 |
| .align 4 |
| .LEFDEf: |
| .LSFDEd: |
| .long .LEFDEd-.LASFDEd # length |
| .LASFDEd: |
| .long .LASFDEd-.Lframe1 # CIE_pointer |
| .long .LFBd-. # initial_location |
| .long .LFEd-.LFBd # address_range |
| .uleb128 0 # augmentation size 0 |
| # instructions: |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFId0-.LFBd |
| .byte 0x0E # DW_CFA_def_cfa_offset 8 |
| .uleb128 8 |
| .byte 0x85 # DW_CFA_offset %ebp, 2 |
| .uleb128 2 |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFId1-.LCFId0 |
| .byte 0x0D # DW_CFA_def_cfa_register %ebp |
| .uleb128 5 |
| .align 4 |
| .LEFDEd: |
| .LSFDEc: |
| .long .LEFDEc-.LASFDEc # length |
| .LASFDEc: |
| .long .LASFDEc-.Lframe1 # CIE_pointer |
| .long .LFBc-. # initial_location |
| .long .LFEc-.LFBc # address_range |
| .uleb128 0 # augmentation size 0 |
| # instructions: |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFIc0-.LFBc |
| .byte 0x0E # DW_CFA_def_cfa_offset 8 |
| .uleb128 8 |
| .byte 0x85 # DW_CFA_offset %ebp, 2 |
| .uleb128 2 |
| .byte 0x04 # DW_CFA_advance_loc4 |
| .long .LCFIc1-.LCFIc0 |
| .byte 0x0D # DW_CFA_def_cfa_register %ebp |
| .uleb128 5 |
| .align 4 |
| .LEFDEc: |