Re: [hatari-devel] Possible bug in 060 exception stack frames

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


On Montag, 18. Januar 2021 10:04:17 CET Thorsten Otto wrote:

> Its a bit

> difficult because the tests only print the first failing test number

 

I've now changed the tests so that the expected/actual values are printed. Results are attached below.

 

I've also tried to fake the result code so that all tests are executed even if they fail, but then i get an address error....

 

 

- the first test for unimplemented effective address succeeds (fmove.b #2,fp0). The 2nd test fails ( fadd.p #0xc12300012345678912345678,%fp0)

 

- the tests for unimplemented data type mostly deal with denormals/subnormals. Does Hatari generate an exception for them at all, or are they handled by the software emulation from Hatari?

 

- for the unimplemented instructions, the first one (fsin) succeeds, the 2nd (ftan) fails

 

- The remaining, failing tests deal with other exceptions like operand error.

 

Testing 68060 ISP started:
	64-bit multiply...passed
	64-bit divide...passed
	cmp2,chk2...passed
	movep...passed
	Effective addresses...passed
	cas...passed
	cas2...passed
Testing 68060 FPSP started:
	Unimplemented <ea>...failed: 00000002
expected:
    FPCR=00000000 FPSR=00000108 FPIAR=010203f8
    FP0= 3e660000 d0ed23e8 d14035bc
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00000000 FPSR=00000000 FPIAR=010203f8
    FP0= 3e660000 d0ed23e8 d1403800
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

2 failed
	Unimplemented data type/format...failed: 00000001
expected:
    FPCR=00000000 FPSR=08000000 FPIAR=01021080
    FP0= c0010000 80000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00000000 FPSR=0c000000 FPIAR=01021080
    FP0= 80000000 00000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

1 failed
	Non-maskable overflow...failed: 00000001
expected:
    FPCR=00000000 FPSR=02001048 FPIAR=01020990
    FP0= 7fff0000 00000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00000000 FPSR=02000000 FPIAR=01020990
    FP0= 7fff0000 00000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

1 failed
	Non-maskable underflow...failed: 00000001
expected:
    FPCR=00000000 FPSR=00000800 FPIAR=01020c2c
    FP0= 00000000 40000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00000000 FPSR=04000000 FPIAR=01020c2c
    FP0= 00000000 00000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

1 failed
Testing 68060 FPSP unimplemented instruction started:
	Unimplemented FP instructions...failed: 00000002
expected:
    FPCR=00000000 FPSR=00000208 FPIAR=01020040
    FP0= 3fff0000 80000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00000000 FPSR=00000208 FPIAR=01020040
    FP0= 3ffe0000 ffffffff fffff800
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

2 failed
Testing 68060 FPSP exception enabled started:
	Enabled SNAN...failed: 00000001
expected:
    FPCR=00004000 FPSR=09004080 FPIAR=01020de4
    FP0= ffff0000 00000000 00000001
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00004000 FPSR=09000000 FPIAR=01020de4
    FP0= ffff0000 40000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

1 failed
	Enabled OPERR...failed: 00000001
expected:
    FPCR=00002000 FPSR=01002080 FPIAR=01020ec0
    FP0= ffff0000 00000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00002000 FPSR=09000000 FPIAR=01020ec0
    FP0= ffff0000 40000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

1 failed
	Enabled overflow...failed: 00000001
expected:
    FPCR=00001000 FPSR=02001048 FPIAR=01020a70
    FP0= 7fff0000 00000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00001000 FPSR=02000000 FPIAR=01020a70
    FP0= 7fff0000 00000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

1 failed
	Enabled underflow...failed: 00000001
expected:
    FPCR=00000800 FPSR=00000800 FPIAR=01020b50
    FP0= 00000000 40000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00000800 FPSR=04000000 FPIAR=01020b50
    FP0= 00000000 00000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

1 failed
	Enabled DZ...failed: 00000001
expected:
    FPCR=00000400 FPSR=02000410 FPIAR=01020f9c
    FP0= 40000000 80000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00000400 FPSR=02000000 FPIAR=01020f9c
    FP0= 7fff0000 00000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

1 failed
	Enabled inexact...failed: 00000001
expected:
    FPCR=00000200 FPSR=00000208 FPIAR=01020d08
    FP0= 50000000 80000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800
got:
    FPCR=00000200 FPSR=02000000 FPIAR=01020d08
    FP0= 7fff0000 00000000 00000000
    FP1= 7fff0000 7fffffff fffff800
    FP2= 7fff0000 7fffffff fffff800
    FP3= 7fff0000 7fffffff fffff800
    FP4= 7fff0000 7fffffff fffff800
    FP5= 7fff0000 7fffffff fffff800
    FP6= 7fff0000 7fffffff fffff800
    FP7= 7fff0000 7fffffff fffff800

1 failed


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/