mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-10 15:20:10 +00:00
alpha: Implement math_opt_barrier and math_force_eval
This commit is contained in:
parent
ca7b945c73
commit
d5e16ade14
@ -1,5 +1,8 @@
|
|||||||
2014-07-03 Richard Henderson <rth@redhat.com>
|
2014-07-03 Richard Henderson <rth@redhat.com>
|
||||||
|
|
||||||
|
* sysdeps/alpha/fpu/math_private.h (math_opt_barrier): New.
|
||||||
|
(math_force_eval): New.
|
||||||
|
|
||||||
* sysdeps/alpha/fpu/s_lround.c: Add 0.5 with chopped rounding.
|
* sysdeps/alpha/fpu/s_lround.c: Add 0.5 with chopped rounding.
|
||||||
* sysdeps/alpha/fpu/s_lroundf.c: Likewise.
|
* sysdeps/alpha/fpu/s_lroundf.c: Likewise.
|
||||||
|
|
||||||
|
@ -13,6 +13,12 @@
|
|||||||
# define __isnanf __isnanf
|
# define __isnanf __isnanf
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Generic code forces values to memory; we don't need to do that. */
|
||||||
|
#define math_opt_barrier(x) \
|
||||||
|
({ __typeof (x) __x = (x); __asm ("" : "+frm" (__x)); __x; })
|
||||||
|
#define math_force_eval(x) \
|
||||||
|
({ __typeof (x) __x = (x); __asm __volatile__ ("" : : "frm" (__x)); })
|
||||||
|
|
||||||
#include_next <math_private.h>
|
#include_next <math_private.h>
|
||||||
|
|
||||||
#ifdef __alpha_fix__
|
#ifdef __alpha_fix__
|
||||||
|
Loading…
Reference in New Issue
Block a user