diff options
author | Vincent Chen <vincentc@andestech.com> | 2019-05-20 04:21:12 +0300 |
---|---|---|
committer | Greentime Hu <greentime@andestech.com> | 2019-05-31 10:23:26 +0300 |
commit | ed32949e0acb73e7bc054bb02e0453d4d561ceda (patch) | |
tree | f582241cdd3450e01fe6d1cf508a3e3a8211c675 /arch/nds32/include/uapi/asm/udftrap.h | |
parent | 8183db10db6377ac58ad048a4c827425a614695c (diff) | |
download | linux-ed32949e0acb73e7bc054bb02e0453d4d561ceda.tar.xz |
nds32: Avoid IEX status being incorrectly modified
In order for kernel to capture each denormalized output, the UDF
trapping enable bit is always raised in $fpcsr. Because underflow case will
issue not an underflow exception but also an inexact exception, it causes
that the IEX, IEX cumulative exception, flag in $fpcsr to be raised in each
denormalized output handling. To make the emulation transparent to the
user, the emulator needs to clear the IEX flag in $fpcsr if the result is a
denormalized number. However, if the IEX flag has been raised before this
floating point emulation, this cleanup may be incorrect. To avoid the IEX
flags in $fpcsr be raised in each denormalized output handling, the IEX
trap shall be always enabled.
Signed-off-by: Vincent Chen <vincentc@andestech.com>
Acked-by: Greentime Hu <greentime@andestech.com>
Signed-off-by: Greentime Hu <greentime@andestech.com>
Diffstat (limited to 'arch/nds32/include/uapi/asm/udftrap.h')
-rw-r--r-- | arch/nds32/include/uapi/asm/udftrap.h | 13 |
1 files changed, 0 insertions, 13 deletions
diff --git a/arch/nds32/include/uapi/asm/udftrap.h b/arch/nds32/include/uapi/asm/udftrap.h deleted file mode 100644 index 433f79d679c0..000000000000 --- a/arch/nds32/include/uapi/asm/udftrap.h +++ /dev/null @@ -1,13 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -/* Copyright (C) 2005-2018 Andes Technology Corporation */ -#ifndef _ASM_SETFPUTRAP -#define _ASM_SETFPUTRAP - -/* - * Options for setfputrap system call - */ -#define DISABLE_UDFTRAP 0 /* disable underflow exception trap */ -#define ENABLE_UDFTRAP 1 /* enable undeflos exception trap */ -#define GET_UDFTRAP 2 /* only get undeflos exception trap status */ - -#endif /* _ASM_CACHECTL */ |