diff options
Diffstat (limited to 'newlib/libc/sys/sparc64/ieee.c')
-rw-r--r-- | newlib/libc/sys/sparc64/ieee.c | 115 |
1 files changed, 0 insertions, 115 deletions
diff --git a/newlib/libc/sys/sparc64/ieee.c b/newlib/libc/sys/sparc64/ieee.c deleted file mode 100644 index 2828976..0000000 --- a/newlib/libc/sys/sparc64/ieee.c +++ /dev/null @@ -1,115 +0,0 @@ - -#include <ieeefp.h> - - -fp_rnd -_DEFUN_VOID(fpgetround) -{ - char *out; - ieee_flags("get", "direction","", &out); - if (strcmp(out,"nearest") == 0) return FP_RN; - if (strcmp(out,"negative") == 0) return FP_RM; - if (strcmp(out,"positive") == 0) return FP_RP; - if (strcmp(out,"tozero") == 0) return FP_RZ; - abort(); - -} - -fp_rnd -_DEFUN(fpsetround,(new), - fp_rnd new) -{ - fp_rnd old = fpgetround(); - char *dummy; - - switch (new) - { - case FP_RN: - ieee_flags("set", "direction", "nearest", &dummy); - break; - case FP_RM: - ieee_flags("set", "direction", "negative", &dummy); - break; - case FP_RP: - ieee_flags("set", "direction", "positive", &dummy); - break; - case FP_RZ: - ieee_flags("set", "direction", "tozero", &dummy); - break; - default: - break; - } - return old; -} - - -fp_except -_DEFUN_VOID(fpgetmask) -{ - char *out; - int r = 0; - - int i = ieee_flags("get","exception","",&out); - if (i & 1) r |= FP_X_IMP; - if (i & 2) r |= FP_X_DX; - if (i & 4) r |= FP_X_UFL; - if (i & 8) r |= FP_X_OFL; - if (i & 16) r |= FP_X_INV; - return r; - -} - -fp_except -_DEFUN(fpsetmask,(mask), - fp_except mask) -{ - fp_except old = fpgetmask(); - - char *out; - ieee_flags("clear","exception", "all", &out); - - - if (mask & FP_X_IMP) - ieee_flags("set","exception","inexact", &out); - if (mask & FP_X_DX) - ieee_flags("set","exception","division", &out); - if (mask & FP_X_UFL) - ieee_flags("set","exception","underflow", &out); - if (mask & FP_X_OFL) - ieee_flags("set","exception","overflow", &out); - if (mask & FP_X_INV) - ieee_flags("set","exception","invalid", &out); - - return old; - -} - -fp_except -_DEFUN(fpsetsticky,(mask), - fp_except mask) -{ - return fpsetmask(mask); -} - -fp_except -_DEFUN_VOID(fpgetsticky) -{ - return fpgetmask(); -} - -int -_DEFUN(fpsetroundtoi,(rdi_mode), - fp_rdi rdi_mode) -{ - - return 0; - -} - -int -_DEFUN_VOID(fpgetroundtoi) -{ - - return 0; - -} |