1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-01 10:06:57 +03:00
2009-01-11  Ryan S. Arnold  <rsa@us.ibm.com>
	[BZ #9726]
	* sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_SET_DI_FPSCR,
	_SET_SI_FPSCR): Clobber fp0 to prevent erroneous test-case passes.

2009-01-08  Ryan S. Arnold  <rsa@us.ibm.com>

	[BZ #9726]
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
	(__CONTEXT_FUNC_NAME): Fix mtfsf to use fp31 instead of fp0.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
	(__CONTEXT_FUNC_NAME): Fix mtfsf to use fp31 instead of fp0.
This commit is contained in:
Ulrich Drepper
2009-01-30 20:30:46 +00:00
parent a3bd28468c
commit b7219e53bc
4 changed files with 39 additions and 19 deletions

View File

@ -1,5 +1,5 @@
/* Jump to a new context powerpc32 common.
Copyright (C) 2005, 2006, 2008 Free Software Foundation, Inc.
Copyright (C) 2005, 2006, 2008, 2009 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
@ -18,13 +18,13 @@
02110-1301 USA. */
/* This is the common implementation of setcontext for powerpc32.
It not complete in itself should be included in to a framework that
It not complete in itself should be included in to a framework that
defines:
__CONTEXT_FUNC_NAME
and if appropriate:
__CONTEXT_ENABLE_FPRS
__CONTEXT_ENABLE_VRS
Any archecture that implements the Vector unit is assumed to also
Any archecture that implements the Vector unit is assumed to also
implement the floating unit. */
/* Stack frame offsets. */
@ -202,7 +202,7 @@ ENTRY(__CONTEXT_FUNC_NAME)
lfd fp0,_UC_FREGS+(0*8)(r31)
# ifdef _ARCH_PWR6
/* Use the extended four-operand version of the mtfsf insn. */
mtfsf 0xff,fp0,1,0
mtfsf 0xff,fp31,1,0
# else
/* Availability of DFP indicates a 64-bit FPSCR. */
andi. r6,r7,PPC_FEATURE_HAS_DFP
@ -304,4 +304,3 @@ ENTRY(__CONTEXT_FUNC_NAME)
/* NOTREACHED */
END (__CONTEXT_FUNC_NAME)