Add AArch64 versions of math_opt_barrier and math_force_eval that avoid going via memory.

This commit is contained in:
Wilco Dijkstra 2015-07-13 12:48:33 +01:00
parent c435989f52
commit 82641e16aa
2 changed files with 11 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2015-04-01 Wilco Dijkstra <wdijkstr@arm.com>
* sysdeps/aarch64/fpu/math_private.h
(define math_opt_barrier): Add AArch64 version.
(math_force_eval): Likewise.
2015-07-13 Wilco Dijkstra <wdijkstr@arm.com>
* sysdeps/aarch64/strlen.S (strlen): Optimize strlen.

View File

@ -22,6 +22,11 @@
#include <fenv.h>
#include <fpu_control.h>
#define math_opt_barrier(x) \
({ __typeof (x) __x = (x); __asm ("" : "+w" (__x)); __x; })
#define math_force_eval(x) \
({ __typeof (x) __x = (x); __asm __volatile__ ("" : : "w" (__x)); })
extern __always_inline double
__ieee754_sqrt (double d)
{