/* PLT trampolines. PPC32 version.
- Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2005-2014 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA
- 02110-1301 USA. */
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
#include <sysdep.h>
stw r9,40(r1)
stw r10,44(r1)
stw r0,8(r1)
+#ifndef __NO_FPRS__
# Save the floating point registers
stfd fp1,48(r1)
stfd fp2,56(r1)
stfd fp6,88(r1)
stfd fp7,96(r1)
stfd fp8,104(r1)
+#endif
# XXX TODO: store vmx registers
# Load the extra parameters.
addi r6,r1,16
lwz r4,20(r1)
lwz r3,16(r1)
lwz r0,12(r1)
+#ifndef __NO_FPRS__
# Load the floating point registers.
lfd fp1,48(r1)
lfd fp2,56(r1)
lfd fp6,88(r1)
lfd fp7,96(r1)
lfd fp8,104(r1)
+#endif
# ...unwind the stack frame, and jump to the PLT entry we updated.
addi r1,r1,320
bctr