^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) * Special support for eabi and SVR4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) * Copyright (C) 1995, 1996, 1998, 2000, 2001 Free Software Foundation, Inc.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) * Copyright 2008 Freescale Semiconductor, Inc.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) * Written By Michael Meissner
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) * Based on gcc/config/rs6000/crtsavres.asm from gcc
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) * This file is free software; you can redistribute it and/or modify it
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) * under the terms of the GNU General Public License as published by the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) * Free Software Foundation; either version 2, or (at your option) any
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) * later version.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) * In addition to the permissions in the GNU General Public License, the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) * Free Software Foundation gives you unlimited permission to link the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) * compiled version of this file with other programs, and to distribute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) * those programs without any restriction coming from the use of this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) * file. (The General Public License restrictions do apply in other
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) * respects; for example, they cover modification of the file, and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) * distribution when not linked into another program.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) * This file is distributed in the hope that it will be useful, but
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) * WITHOUT ANY WARRANTY; without even the implied warranty of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) * General Public License for more details.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) * You should have received a copy of the GNU General Public License
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) * along with this program; see the file COPYING. If not, write to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) * the Free Software Foundation, 51 Franklin Street, Fifth Floor,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) * Boston, MA 02110-1301, USA.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) * As a special exception, if you link this library with files
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) * compiled with GCC to produce an executable, this does not cause
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) * the resulting executable to be covered by the GNU General Public License.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) * This exception does not however invalidate any other reasons why
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) * the executable file might be covered by the GNU General Public License.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) #ifdef __powerpc64__
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) #error "On PPC64, FPR save/restore functions are provided by the linker."
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) .file "crtsavres.S"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) .section ".text"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) #define _GLOBAL(name) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) .type name,@function; \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) .globl name; \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) name:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) /* Routines for saving integer registers, called by the compiler. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) /* Called with r11 pointing to the stack header word of the caller of the */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) /* function, just beyond the end of the integer save area. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) _GLOBAL(_savegpr_14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) _GLOBAL(_save32gpr_14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) stw 14,-72(11) /* save gp registers */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) _GLOBAL(_savegpr_15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) _GLOBAL(_save32gpr_15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) stw 15,-68(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) _GLOBAL(_savegpr_16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) _GLOBAL(_save32gpr_16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) stw 16,-64(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) _GLOBAL(_savegpr_17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) _GLOBAL(_save32gpr_17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) stw 17,-60(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) _GLOBAL(_savegpr_18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) _GLOBAL(_save32gpr_18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) stw 18,-56(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) _GLOBAL(_savegpr_19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) _GLOBAL(_save32gpr_19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) stw 19,-52(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) _GLOBAL(_savegpr_20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) _GLOBAL(_save32gpr_20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) stw 20,-48(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) _GLOBAL(_savegpr_21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) _GLOBAL(_save32gpr_21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) stw 21,-44(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) _GLOBAL(_savegpr_22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) _GLOBAL(_save32gpr_22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) stw 22,-40(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) _GLOBAL(_savegpr_23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) _GLOBAL(_save32gpr_23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) stw 23,-36(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) _GLOBAL(_savegpr_24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) _GLOBAL(_save32gpr_24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) stw 24,-32(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) _GLOBAL(_savegpr_25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) _GLOBAL(_save32gpr_25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) stw 25,-28(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) _GLOBAL(_savegpr_26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) _GLOBAL(_save32gpr_26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) stw 26,-24(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) _GLOBAL(_savegpr_27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) _GLOBAL(_save32gpr_27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) stw 27,-20(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) _GLOBAL(_savegpr_28)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) _GLOBAL(_save32gpr_28)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) stw 28,-16(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) _GLOBAL(_savegpr_29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) _GLOBAL(_save32gpr_29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) stw 29,-12(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) _GLOBAL(_savegpr_30)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) _GLOBAL(_save32gpr_30)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) stw 30,-8(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) _GLOBAL(_savegpr_31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) _GLOBAL(_save32gpr_31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) stw 31,-4(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) blr
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) /* Routines for restoring integer registers, called by the compiler. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) /* Called with r11 pointing to the stack header word of the caller of the */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) /* function, just beyond the end of the integer restore area. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) _GLOBAL(_restgpr_14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) _GLOBAL(_rest32gpr_14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) lwz 14,-72(11) /* restore gp registers */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) _GLOBAL(_restgpr_15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) _GLOBAL(_rest32gpr_15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) lwz 15,-68(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) _GLOBAL(_restgpr_16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) _GLOBAL(_rest32gpr_16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) lwz 16,-64(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) _GLOBAL(_restgpr_17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) _GLOBAL(_rest32gpr_17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) lwz 17,-60(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) _GLOBAL(_restgpr_18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) _GLOBAL(_rest32gpr_18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) lwz 18,-56(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) _GLOBAL(_restgpr_19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) _GLOBAL(_rest32gpr_19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) lwz 19,-52(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) _GLOBAL(_restgpr_20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) _GLOBAL(_rest32gpr_20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) lwz 20,-48(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) _GLOBAL(_restgpr_21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) _GLOBAL(_rest32gpr_21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) lwz 21,-44(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) _GLOBAL(_restgpr_22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) _GLOBAL(_rest32gpr_22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) lwz 22,-40(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) _GLOBAL(_restgpr_23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) _GLOBAL(_rest32gpr_23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) lwz 23,-36(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) _GLOBAL(_restgpr_24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) _GLOBAL(_rest32gpr_24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) lwz 24,-32(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) _GLOBAL(_restgpr_25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) _GLOBAL(_rest32gpr_25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) lwz 25,-28(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) _GLOBAL(_restgpr_26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) _GLOBAL(_rest32gpr_26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) lwz 26,-24(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) _GLOBAL(_restgpr_27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) _GLOBAL(_rest32gpr_27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) lwz 27,-20(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) _GLOBAL(_restgpr_28)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) _GLOBAL(_rest32gpr_28)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) lwz 28,-16(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) _GLOBAL(_restgpr_29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) _GLOBAL(_rest32gpr_29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) lwz 29,-12(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) _GLOBAL(_restgpr_30)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) _GLOBAL(_rest32gpr_30)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) lwz 30,-8(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) _GLOBAL(_restgpr_31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) _GLOBAL(_rest32gpr_31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) lwz 31,-4(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) blr
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) /* Routines for restoring integer registers, called by the compiler. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) /* Called with r11 pointing to the stack header word of the caller of the */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) /* function, just beyond the end of the integer restore area. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) _GLOBAL(_restgpr_14_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) _GLOBAL(_rest32gpr_14_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) lwz 14,-72(11) /* restore gp registers */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) _GLOBAL(_restgpr_15_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) _GLOBAL(_rest32gpr_15_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) lwz 15,-68(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) _GLOBAL(_restgpr_16_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) _GLOBAL(_rest32gpr_16_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) lwz 16,-64(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) _GLOBAL(_restgpr_17_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) _GLOBAL(_rest32gpr_17_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) lwz 17,-60(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) _GLOBAL(_restgpr_18_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) _GLOBAL(_rest32gpr_18_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) lwz 18,-56(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) _GLOBAL(_restgpr_19_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) _GLOBAL(_rest32gpr_19_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) lwz 19,-52(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) _GLOBAL(_restgpr_20_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) _GLOBAL(_rest32gpr_20_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) lwz 20,-48(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) _GLOBAL(_restgpr_21_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) _GLOBAL(_rest32gpr_21_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) lwz 21,-44(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) _GLOBAL(_restgpr_22_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) _GLOBAL(_rest32gpr_22_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) lwz 22,-40(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) _GLOBAL(_restgpr_23_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) _GLOBAL(_rest32gpr_23_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) lwz 23,-36(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) _GLOBAL(_restgpr_24_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) _GLOBAL(_rest32gpr_24_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) lwz 24,-32(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) _GLOBAL(_restgpr_25_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) _GLOBAL(_rest32gpr_25_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) lwz 25,-28(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) _GLOBAL(_restgpr_26_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) _GLOBAL(_rest32gpr_26_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) lwz 26,-24(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) _GLOBAL(_restgpr_27_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) _GLOBAL(_rest32gpr_27_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) lwz 27,-20(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) _GLOBAL(_restgpr_28_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) _GLOBAL(_rest32gpr_28_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) lwz 28,-16(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) _GLOBAL(_restgpr_29_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) _GLOBAL(_rest32gpr_29_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) lwz 29,-12(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) _GLOBAL(_restgpr_30_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) _GLOBAL(_rest32gpr_30_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) lwz 30,-8(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) _GLOBAL(_restgpr_31_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) _GLOBAL(_rest32gpr_31_x)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) lwz 0,4(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) lwz 31,-4(11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) mtlr 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) mr 1,11
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) blr