• Vincent Chen's avatar
    nds32: support denormalized result through FP emulator · 44e92e03
    Vincent Chen authored
    Currently, the nds32 FPU dose not support the arithmetic of denormalized
    number. When the nds32 FPU finds the result of the instruction is a
    denormlized number, the nds32 FPU considers it to be an underflow condition
    and rounds the result to an appropriate number. It may causes some loss
    of precision. This commit proposes a solution to re-execute the
    instruction by the FPU emulator to enhance the precision. To transfer
    calculations from user space to kernel space, this feature will enable
    the underflow exception trap by default. Enabling this feature may cause
    some side effects:
      1. Performance loss due to extra FPU exception
      2. Need another scheme to control real underflow trap
           A new parameter, UDF_trap, which is belong to FPU context is used
         to control underflow trap.
    
    User can configure this feature via CONFIG_SUPPORT_DENORMAL_ARITHMETIC
    Signed-off-by: default avatarVincent Chen <vincentc@andestech.com>
    Acked-by: default avatarGreentime Hu <greentime@andestech.com>
    Signed-off-by: default avatarGreentime Hu <greentime@andestech.com>
    44e92e03
sys_nds32.c 1.67 KB