From f6ce9294b0a6c5a847109cc41b7ad0c838b9ccfe Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Wed, 26 Oct 2011 11:19:35 +0200 Subject: Make math_force_eval accept non-addressable arguments --- sysdeps/i386/fpu/math_private.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'sysdeps') diff --git a/sysdeps/i386/fpu/math_private.h b/sysdeps/i386/fpu/math_private.h index a426788ef1..8a51851377 100644 --- a/sysdeps/i386/fpu/math_private.h +++ b/sysdeps/i386/fpu/math_private.h @@ -1,16 +1,17 @@ #ifndef _MATH_PRIVATE_H #define math_opt_barrier(x) \ -({ __typeof(x) __x; \ +({ __typeof (x) __x; \ __asm ("" : "=t" (__x) : "0" (x)); \ __x; }) #define math_force_eval(x) \ do \ { \ + __typeof (x) __x = (x); \ if (sizeof (x) <= sizeof (double)) \ - __asm __volatile ("" : : "m" (x)); \ + __asm __volatile ("" : : "m" (__x)); \ else \ - __asm __volatile ("" : : "f" (x)); \ + __asm __volatile ("" : : "f" (__x)); \ } \ while (0) -- cgit 1.4.1