From 5400a7d131ecf621f074ae242867de2f78076b28 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Fri, 15 Jun 2012 14:26:58 -0700 Subject: [PATCH] alpha: Define FP_TRAPPING_EXCEPTIONS --- ChangeLog.alpha | 2 ++ sysdeps/alpha/soft-fp/sfp-machine.h | 5 ++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ChangeLog.alpha b/ChangeLog.alpha index 5ec3634..062b4f2 100644 --- a/ChangeLog.alpha +++ b/ChangeLog.alpha @@ -1,5 +1,7 @@ 2012-06-15 Richard Henderson + * sysdeps/alpha/soft-fp/sfp-machine.h (FP_TRAPPING_EXCEPTIONS): New. + * sysdeps/alpha/fpu/s_rint.c (__rint): Handle inexact regardless of -mieee-with-inexact. * sysdeps/alpha/fpu/s_rintf.c (__rintf): Likewise. diff --git a/sysdeps/alpha/soft-fp/sfp-machine.h b/sysdeps/alpha/soft-fp/sfp-machine.h index ef6e957..202f736 100644 --- a/sysdeps/alpha/soft-fp/sfp-machine.h +++ b/sysdeps/alpha/soft-fp/sfp-machine.h @@ -1,6 +1,6 @@ /* Machine-dependent software floating-point definitions. Alpha userland IEEE 128-bit version. - Copyright (C) 2004 Free Software Foundation, Inc. + Copyright (C) 2004-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Richard Henderson (rth@cygnus.com), Jakub Jelinek (jj@ultra.linux.cz) and @@ -91,3 +91,6 @@ do { \ __ieee_set_fp_control (t | _fex); \ } \ } while (0) + +#define FP_TRAPPING_EXCEPTIONS \ + ((__ieee_get_fp_control () & SWCR_ENABLE_MASK) << SWCR_ENABLE_SHIFT) -- 2.7.4