nds32: add new emulations for floating point instruction

The existing floating point emulations is only available for floating
instruction that possibly issue denormalized input and underflow
exceptions. These existing FPU emulations are not sufficient when IEx
Trap is enabled because some floating point instructions only issue inexact
exception. This patch adds the emulations of such floating point
instructions.

Signed-off-by: Vincent Chen <vincentc@andestech.com>
Acked-by: Greentime Hu <greentime@andestech.com>
Signed-off-by: Greentime Hu <greentime@andestech.com>
This commit is contained in:
Vincent Chen
2019-05-20 09:21:13 +08:00
committed by Greentime Hu
szülő ed32949e0a
commit 9322961205
15 fájl változott, egészen pontosan 393 új sor hozzáadva és 5 régi sor törölve

Fájl megtekintése

@@ -0,0 +1,22 @@
// SPDX-License-Identifier: GPL-2.0
// Copyright (C) 2005-2019 Andes Technology Corporation
#include <linux/uaccess.h>
#include <asm/sfp-machine.h>
#include <math-emu/soft-fp.h>
#include <math-emu/single.h>
void fui2s(void *ft, void *fa)
{
unsigned int a = *(unsigned int *)fa;
FP_DECL_S(R);
FP_DECL_EX;
FP_FROM_INT_S(R, a, 32, int);
FP_PACK_SP(ft, R);
__FPU_FPCSR |= FP_CUR_EXCEPTIONS;
}