1/* 2 * Special support for e500 eabi and SVR4 3 * 4 * Copyright (C) 2008-2013 Free Software Foundation, Inc. 5 * Written by Nathan Froyd 6 * 7 * This file is free software; you can redistribute it and/or modify it 8 * under the terms of the GNU General Public License as published by the 9 * Free Software Foundation; either version 3, or (at your option) any 10 * later version. 11 * 12 * This file is distributed in the hope that it will be useful, but 13 * WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 * General Public License for more details. 16 * 17 * Under Section 7 of GPL version 3, you are granted additional 18 * permissions described in the GCC Runtime Library Exception, version 19 * 3.1, as published by the Free Software Foundation. 20 * 21 * You should have received a copy of the GNU General Public License and 22 * a copy of the GCC Runtime Library Exception along with this program; 23 * see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 24 * <http://www.gnu.org/licenses/>. 25 */ 26 27 .section ".text" 28 #include "ppc-asm.h" 29 30#ifdef __SPE__ 31 32/* Routines for restoring 64-bit integer registers where the number of 33 registers to be restored is passed in CTR, called by the compiler. */ 34 35HIDDEN_FUNC(_rest64gpr_ctr_14) evldd 14,0(11) 36 bdz _rest64gpr_ctr_done 37HIDDEN_FUNC(_rest64gpr_ctr_15) evldd 15,8(11) 38 bdz _rest64gpr_ctr_done 39HIDDEN_FUNC(_rest64gpr_ctr_16) evldd 16,16(11) 40 bdz _rest64gpr_ctr_done 41HIDDEN_FUNC(_rest64gpr_ctr_17) evldd 17,24(11) 42 bdz _rest64gpr_ctr_done 43HIDDEN_FUNC(_rest64gpr_ctr_18) evldd 18,32(11) 44 bdz _rest64gpr_ctr_done 45HIDDEN_FUNC(_rest64gpr_ctr_19) evldd 19,40(11) 46 bdz _rest64gpr_ctr_done 47HIDDEN_FUNC(_rest64gpr_ctr_20) evldd 20,48(11) 48 bdz _rest64gpr_ctr_done 49HIDDEN_FUNC(_rest64gpr_ctr_21) evldd 21,56(11) 50 bdz _rest64gpr_ctr_done 51HIDDEN_FUNC(_rest64gpr_ctr_22) evldd 22,64(11) 52 bdz _rest64gpr_ctr_done 53HIDDEN_FUNC(_rest64gpr_ctr_23) evldd 23,72(11) 54 bdz _rest64gpr_ctr_done 55HIDDEN_FUNC(_rest64gpr_ctr_24) evldd 24,80(11) 56 bdz _rest64gpr_ctr_done 57HIDDEN_FUNC(_rest64gpr_ctr_25) evldd 25,88(11) 58 bdz _rest64gpr_ctr_done 59HIDDEN_FUNC(_rest64gpr_ctr_26) evldd 26,96(11) 60 bdz _rest64gpr_ctr_done 61HIDDEN_FUNC(_rest64gpr_ctr_27) evldd 27,104(11) 62 bdz _rest64gpr_ctr_done 63HIDDEN_FUNC(_rest64gpr_ctr_28) evldd 28,112(11) 64 bdz _rest64gpr_ctr_done 65HIDDEN_FUNC(_rest64gpr_ctr_29) evldd 29,120(11) 66 bdz _rest64gpr_ctr_done 67HIDDEN_FUNC(_rest64gpr_ctr_30) evldd 30,128(11) 68 bdz _rest64gpr_ctr_done 69HIDDEN_FUNC(_rest64gpr_ctr_31) evldd 31,136(11) 70_rest64gpr_ctr_done: blr 71FUNC_END(_rest64gpr_ctr_31) 72FUNC_END(_rest64gpr_ctr_30) 73FUNC_END(_rest64gpr_ctr_29) 74FUNC_END(_rest64gpr_ctr_28) 75FUNC_END(_rest64gpr_ctr_27) 76FUNC_END(_rest64gpr_ctr_26) 77FUNC_END(_rest64gpr_ctr_25) 78FUNC_END(_rest64gpr_ctr_24) 79FUNC_END(_rest64gpr_ctr_23) 80FUNC_END(_rest64gpr_ctr_22) 81FUNC_END(_rest64gpr_ctr_21) 82FUNC_END(_rest64gpr_ctr_20) 83FUNC_END(_rest64gpr_ctr_19) 84FUNC_END(_rest64gpr_ctr_18) 85FUNC_END(_rest64gpr_ctr_17) 86FUNC_END(_rest64gpr_ctr_16) 87FUNC_END(_rest64gpr_ctr_15) 88FUNC_END(_rest64gpr_ctr_14) 89 90#endif 91