+2015-03-11 John David Anglin <danglin@gcc.gnu.org>
+
+ [BZ #18110]
+ * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Don't modify bufptr in
+ asms.
+ * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
+
2015-03-11 Joseph Myers <joseph@codesourcery.com>
* soft-fp/soft-fp.h (_FP_UNREACHABLE): New macro.
16560, 16783, 17269, 17523, 17569, 17588, 17631, 17711, 17776, 17779,
17792, 17836, 17912, 17916, 17932, 17944, 17949, 17964, 17965, 17967,
17969, 17978, 17987, 17991, 17996, 17998, 17999, 18019, 18020, 18029,
- 18030, 18032, 18036, 18038, 18039, 18042, 18043, 18046, 18047, 18104.
+ 18030, 18032, 18036, 18038, 18039, 18042, 18043, 18046, 18047, 18104,
+ 18110.
* Character encoding and ctype tables were updated to Unicode 7.0.0, using
new generator scripts contributed by Pravin Satpute and Mike FABIAN (Red
/* Store the environment. */
bufptr = clear.buf;
__asm__ (
- "fstd,ma %%fr0,8(%1)\n"
- : "=m" (clear), "+r" (bufptr) : : "%r0");
+ "fstd %%fr0,0(%1)\n"
+ : "=m" (clear) : "r" (bufptr) : "%r0");
memcpy (envp, &clear.env, sizeof (fenv_t));
/* Clear exception queues */
/* Now clear all flags */
clear.env.__status_word &= ~(FE_ALL_EXCEPT << 27);
- /* Load the new environment. Note: fr0 must load last to enable T-bit
- Thus we start bufptr at the end and work backwards */
- bufptr = (unsigned long long *)((unsigned int)(clear.buf) + sizeof(unsigned int)*4);
+ /* Load the new environment. Note: fr0 must load last to enable T-bit. */
__asm__ (
- "fldd,mb -8(%0),%%fr0\n"
+ "fldd 0(%0),%%fr0\n"
: : "r" (bufptr), "m" (clear) : "%r0");
return 0;
we want to use from the environment specified by the parameter. */
bufptr = temp.buf;
__asm__ (
- "fstd,ma %%fr0,8(%1)\n"
+ "fstd %%fr0,0(%1)\n"
: "=m" (temp) : "r" (bufptr) : "%r0");
temp.env.__status_word &= ~(FE_ALL_EXCEPT
we take advantage of that to load in reverse order so fr0
is loaded last and T-Bit is enabled. */
__asm__ (
- "fldd,mb -8(%1),%%fr0\n"
+ "fldd 0(%1),%%fr0\n"
: : "m" (temp), "r" (bufptr) : "%r0" );
/* Success. */