diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | sysdeps/powerpc/fpu/math_private.h | 7 |
2 files changed, 11 insertions, 0 deletions
@@ -1,5 +1,9 @@ 2017-10-13 Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com> + [BZ #22189] + * sysdeps/powerpc/fpu/math_private.h (math_opt_barrier): + (math_force_eval): Add powerpc version. + [BZ #22142] * stdio-common/tst-printf.c (fp_test): Add tests for DBL_MAX and -DBL_MAX. diff --git a/sysdeps/powerpc/fpu/math_private.h b/sysdeps/powerpc/fpu/math_private.h index 396fd05..472182d 100644 --- a/sysdeps/powerpc/fpu/math_private.h +++ b/sysdeps/powerpc/fpu/math_private.h @@ -23,6 +23,13 @@ #include <ldsodefs.h> #include <dl-procinfo.h> #include <fenv_private.h> + +/* Avoid putting floating point values in memory. */ +# define math_opt_barrier(x) \ + ({ __typeof (x) __x = (x); __asm ("" : "+dwa" (__x)); __x; }) +# define math_force_eval(x) \ + ({ __typeof (x) __x = (x); __asm __volatile__ ("" : : "dwa" (__x)); }) + #include_next <math_private.h> #if defined _ARCH_PWR9 && __HAVE_DISTINCT_FLOAT128 |