1 /* 2 * Special support for eabi and SVR4 3 * 4 * Copyright (C) 1995-2024 Free Software Foundation, Inc. 5 * Written By Michael Meissner 6 * 64-bit support written by David Edelsohn 7 * 8 * This file is free software; you can redistribute it and/or modify it 9 * under the terms of the GNU General Public License as published by the 10 * Free Software Foundation; either version 3, or (at your option) any 11 * later version. 12 * 13 * This file is distributed in the hope that it will be useful, but 14 * WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 * General Public License for more details. 17 * 18 * Under Section 7 of GPL version 3, you are granted additional 19 * permissions described in the GCC Runtime Library Exception, version 20 * 3.1, as published by the Free Software Foundation. 21 * 22 * You should have received a copy of the GNU General Public License and 23 * a copy of the GCC Runtime Library Exception along with this program; 24 * see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 25 * <http://www.gnu.org/licenses/>. 26 */ 27 28 /* Do any initializations needed for the eabi environment */ 29 30 .machine ppc 31 .section ".text" 32 #include "ppc-asm.h" 33 34 /* On PowerPC64 Linux, these functions are provided by the linker. */ 35 #ifndef __powerpc64__ 36 37 /* Routines for restoring floating point registers, called by the compiler. */ 38 /* Called with r11 pointing to the stack header word of the caller of the */ 39 /* function, just beyond the end of the floating point save area. */ 40 41 CFI_STARTPROC 42 HIDDEN_FUNC(_restfpr_14) lfd 14,-144(11) /* restore fp registers */ 43 HIDDEN_FUNC(_restfpr_15) lfd 15,-136(11) 44 HIDDEN_FUNC(_restfpr_16) lfd 16,-128(11) 45 HIDDEN_FUNC(_restfpr_17) lfd 17,-120(11) 46 HIDDEN_FUNC(_restfpr_18) lfd 18,-112(11) 47 HIDDEN_FUNC(_restfpr_19) lfd 19,-104(11) 48 HIDDEN_FUNC(_restfpr_20) lfd 20,-96(11) 49 HIDDEN_FUNC(_restfpr_21) lfd 21,-88(11) 50 HIDDEN_FUNC(_restfpr_22) lfd 22,-80(11) 51 HIDDEN_FUNC(_restfpr_23) lfd 23,-72(11) 52 HIDDEN_FUNC(_restfpr_24) lfd 24,-64(11) 53 HIDDEN_FUNC(_restfpr_25) lfd 25,-56(11) 54 HIDDEN_FUNC(_restfpr_26) lfd 26,-48(11) 55 HIDDEN_FUNC(_restfpr_27) lfd 27,-40(11) 56 HIDDEN_FUNC(_restfpr_28) lfd 28,-32(11) 57 HIDDEN_FUNC(_restfpr_29) lfd 29,-24(11) 58 HIDDEN_FUNC(_restfpr_30) lfd 30,-16(11) 59 HIDDEN_FUNC(_restfpr_31) lfd 31,-8(11) 60 blr 61 FUNC_END(_restfpr_31) 62 FUNC_END(_restfpr_30) 63 FUNC_END(_restfpr_29) 64 FUNC_END(_restfpr_28) 65 FUNC_END(_restfpr_27) 66 FUNC_END(_restfpr_26) 67 FUNC_END(_restfpr_25) 68 FUNC_END(_restfpr_24) 69 FUNC_END(_restfpr_23) 70 FUNC_END(_restfpr_22) 71 FUNC_END(_restfpr_21) 72 FUNC_END(_restfpr_20) 73 FUNC_END(_restfpr_19) 74 FUNC_END(_restfpr_18) 75 FUNC_END(_restfpr_17) 76 FUNC_END(_restfpr_16) 77 FUNC_END(_restfpr_15) 78 FUNC_END(_restfpr_14) 79 CFI_ENDPROC 80 81 #endif 82