]>
Commit | Line | Data |
---|---|---|
18724e30 NF |
1 | /* |
2 | * Special support for e500 eabi and SVR4 | |
3 | * | |
8d9254fc | 4 | * Copyright (C) 2008-2020 Free Software Foundation, Inc. |
18724e30 NF |
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 | |
748086b7 | 9 | * Free Software Foundation; either version 3, or (at your option) any |
18724e30 NF |
10 | * later version. |
11 | * | |
18724e30 NF |
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 | * | |
748086b7 JJ |
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 | */ | |
18724e30 | 26 | |
18724e30 NF |
27 | .section ".text" |
28 | #include "ppc-asm.h" | |
29 | ||
30 | #ifdef __SPE__ | |
31 | ||
32 | /* Routines for saving 64-bit integer registers, called by the compiler. */ | |
33 | /* "GOT" versions that load the address of the GOT into lr before returning. */ | |
34 | ||
1590a115 | 35 | HIDDEN_FUNC(_save64gpr_ctr_14_g) evstdd 14,0(11) |
3cd0d4fa | 36 | bdz _save64gpr_ctr_g_done |
1590a115 | 37 | HIDDEN_FUNC(_save64gpr_ctr_15_g) evstdd 15,8(11) |
3cd0d4fa | 38 | bdz _save64gpr_ctr_g_done |
1590a115 | 39 | HIDDEN_FUNC(_save64gpr_ctr_16_g) evstdd 16,16(11) |
3cd0d4fa | 40 | bdz _save64gpr_ctr_g_done |
1590a115 | 41 | HIDDEN_FUNC(_save64gpr_ctr_17_g) evstdd 17,24(11) |
3cd0d4fa | 42 | bdz _save64gpr_ctr_g_done |
1590a115 | 43 | HIDDEN_FUNC(_save64gpr_ctr_18_g) evstdd 18,32(11) |
3cd0d4fa | 44 | bdz _save64gpr_ctr_g_done |
1590a115 | 45 | HIDDEN_FUNC(_save64gpr_ctr_19_g) evstdd 19,40(11) |
3cd0d4fa | 46 | bdz _save64gpr_ctr_g_done |
1590a115 | 47 | HIDDEN_FUNC(_save64gpr_ctr_20_g) evstdd 20,48(11) |
3cd0d4fa | 48 | bdz _save64gpr_ctr_g_done |
1590a115 | 49 | HIDDEN_FUNC(_save64gpr_ctr_21_g) evstdd 21,56(11) |
3cd0d4fa | 50 | bdz _save64gpr_ctr_g_done |
1590a115 | 51 | HIDDEN_FUNC(_save64gpr_ctr_22_g) evstdd 22,64(11) |
3cd0d4fa | 52 | bdz _save64gpr_ctr_g_done |
1590a115 | 53 | HIDDEN_FUNC(_save64gpr_ctr_23_g) evstdd 23,72(11) |
3cd0d4fa | 54 | bdz _save64gpr_ctr_g_done |
1590a115 | 55 | HIDDEN_FUNC(_save64gpr_ctr_24_g) evstdd 24,80(11) |
3cd0d4fa | 56 | bdz _save64gpr_ctr_g_done |
1590a115 | 57 | HIDDEN_FUNC(_save64gpr_ctr_25_g) evstdd 25,88(11) |
3cd0d4fa | 58 | bdz _save64gpr_ctr_g_done |
1590a115 | 59 | HIDDEN_FUNC(_save64gpr_ctr_26_g) evstdd 26,96(11) |
3cd0d4fa | 60 | bdz _save64gpr_ctr_g_done |
1590a115 | 61 | HIDDEN_FUNC(_save64gpr_ctr_27_g) evstdd 27,104(11) |
3cd0d4fa | 62 | bdz _save64gpr_ctr_g_done |
1590a115 | 63 | HIDDEN_FUNC(_save64gpr_ctr_28_g) evstdd 28,112(11) |
3cd0d4fa | 64 | bdz _save64gpr_ctr_g_done |
1590a115 | 65 | HIDDEN_FUNC(_save64gpr_ctr_29_g) evstdd 29,120(11) |
3cd0d4fa | 66 | bdz _save64gpr_ctr_g_done |
1590a115 | 67 | HIDDEN_FUNC(_save64gpr_ctr_30_g) evstdd 30,128(11) |
3cd0d4fa | 68 | bdz _save64gpr_ctr_g_done |
1590a115 | 69 | HIDDEN_FUNC(_save64gpr_ctr_31_g) evstdd 31,136(11) |
18724e30 NF |
70 | _save64gpr_ctr_g_done: b _GLOBAL_OFFSET_TABLE_-4 |
71 | FUNC_END(_save64gpr_ctr_31_g) | |
72 | FUNC_END(_save64gpr_ctr_30_g) | |
73 | FUNC_END(_save64gpr_ctr_29_g) | |
74 | FUNC_END(_save64gpr_ctr_28_g) | |
75 | FUNC_END(_save64gpr_ctr_27_g) | |
76 | FUNC_END(_save64gpr_ctr_26_g) | |
77 | FUNC_END(_save64gpr_ctr_25_g) | |
78 | FUNC_END(_save64gpr_ctr_24_g) | |
79 | FUNC_END(_save64gpr_ctr_23_g) | |
80 | FUNC_END(_save64gpr_ctr_22_g) | |
81 | FUNC_END(_save64gpr_ctr_21_g) | |
82 | FUNC_END(_save64gpr_ctr_20_g) | |
83 | FUNC_END(_save64gpr_ctr_19_g) | |
84 | FUNC_END(_save64gpr_ctr_18_g) | |
85 | FUNC_END(_save64gpr_ctr_17_g) | |
86 | FUNC_END(_save64gpr_ctr_16_g) | |
87 | FUNC_END(_save64gpr_ctr_15_g) | |
88 | FUNC_END(_save64gpr_ctr_14_g) | |
89 | ||
90 | #endif |