Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/mips/mips Resurrect silently removed lines in rev 1...



details:   https://anonhg.NetBSD.org/src/rev/77702dc05839
branches:  trunk
changeset: 762635:77702dc05839
user:      tsutsui <tsutsui%NetBSD.org@localhost>
date:      Thu Feb 24 16:49:15 2011 +0000

description:
Resurrect silently removed lines in rev 1.37 that update FPU_CSR
in double's inexact or overflow cases.

Now the following tests are passed:
---
tp-start: t_except, 6
tc-start: masked_double
tc-end: masked_double, passed
 :
tc-start: masked_long_double
tc-end: masked_long_double, passed
 :
tp-start: t_subnormal, 2
tc-start: test_double
tc-end: test_double, passed
---

The following ones still fail:
---
tp-start: t_except, 6
 :
tc-start: unmasked_double
tc-se:*** Check failed: /usr/src/tests/lib/libc/ieeefp/t_except.c:269: sicode != t->sicode
tc-end: unmasked_double, failed, 1 checks failed; see output for more details
tc-start: unmasked_float
tc-se:*** Check failed: /usr/src/tests/lib/libc/ieeefp/t_except.c:269: sicode != t->sicode
tc-end: unmasked_float, failed, 1 checks failed; see output for more details
tc-start: unmasked_long_double
tc-se:*** Check failed: /usr/src/tests/lib/libc/ieeefp/t_except.c:269: sicode != t->sicode
tc-end: unmasked_long_double, failed, 1 checks failed; see output for more details
tp-end: t_except
 :
tp-start: t_subnormal, 2
 :
tc-start: test_float
tc-end: test_float, failed, Test program received signal 4 (core dumped)
tp-end: t_subnormal
---

- t_except unmasked failures are mentioned in PR port-mips/35327.
- t_subnormal float failure seems trap caused by a FP insn in BDslot
  (I'm not sure if we can use TF_REG_CAUSE in trapframe to see BD bit)

diffstat:

 sys/arch/mips/mips/fp.S |  4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diffs (18 lines):

diff -r b313c0ed2655 -r 77702dc05839 sys/arch/mips/mips/fp.S
--- a/sys/arch/mips/mips/fp.S   Thu Feb 24 16:21:50 2011 +0000
+++ b/sys/arch/mips/mips/fp.S   Thu Feb 24 16:49:15 2011 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: fp.S,v 1.38 2011/02/20 07:45:47 matt Exp $     */
+/*     $NetBSD: fp.S,v 1.39 2011/02/24 16:49:15 tsutsui Exp $  */
 
 /*
  * Copyright (c) 1992, 1993
@@ -2593,6 +2593,8 @@
        PTR_L   v0, L_PCB(MIPS_CURLWP)          # get pcb of current lwp
        #nop
        INT_S   a2, PCB_FPREGS+FRAME_FSR(v0)
+#else
+       ctc1    a2, MIPS_FPU_CSR                # save exceptions
 #endif
        b       done
 



Home | Main Index | Thread Index | Old Index