1 /************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28 .global vtableCall 29 30 .global vtableSlotCall 31 .align 8 32 vtableSlotCall: 33 ! save %sp, -176, %sp already done in code snippet 34 stx %i0, [%fp + 2047 + 128] 35 stx %i1, [%fp + 2047 + 136] 36 stx %i2, [%fp + 2047 + 144] 37 stx %i3, [%fp + 2047 + 152] 38 stx %i4, [%fp + 2047 + 160] 39 stx %i5, [%fp + 2047 + 168] 40 ! %o0: functionIndex, stored by code snippet 41 ! %o1: vtableOffset, stored by code snippet 42 call vtableCall 43 add %fp, 2047 + 128, %o2 44 ldx [%fp + 2047 + 128], %i0 45 ldx [%fp + 2047 + 136], %i1 46 ldx [%fp + 2047 + 144], %i2 47 ldx [%fp + 2047 + 152], %i3 48 ret 49 restore 50 .size vtableSlotCall, . - vtableSlotCall 51 .type vtableSlotCall, #function 52