Search
lxdream.org :: lxdream/test/sh4/excslot.s :: diff
lxdream 0.9.1
released Jun 29
Download Now
filename test/sh4/excslot.s
changeset 233:f8333b94f503
prev231:a9e61a96a885
next357:3592a10b3242
author nkeynes
date Wed Sep 27 10:21:34 2006 +0000 (14 years ago)
permissions -rw-r--r--
last change Add user mode/system mode switch
Add undefined instruction tests
file annotate diff log raw
1.1 --- a/test/sh4/excslot.s Tue Sep 26 11:05:38 2006 +0000
1.2 +++ b/test/sh4/excslot.s Wed Sep 27 10:21:34 2006 +0000
1.3 @@ -31,10 +31,6 @@
1.4 bsr test_slot_fail
1.5 jsr @r3
1.6 assert_exc_caught test_slot_str_k1 test_slot_2_pc
1.7 - bra test_slot_3
1.8 - nop
1.9 -test_slot_str_k1:
1.10 - .long test_slot_str
1.11
1.12 test_slot_3: ! BRA
1.13 add #1, r12
1.14 @@ -42,7 +38,7 @@
1.15 test_slot_3_pc:
1.16 bsr test_slot_fail
1.17 bra test_slot_fail
1.18 - assert_exc_caught test_slot_str_k test_slot_3_pc
1.19 + assert_exc_caught test_slot_str_k1 test_slot_3_pc
1.20
1.21 test_slot_4: ! BRAF
1.22 add #1, r12
1.23 @@ -103,7 +99,12 @@
1.24 bt/s test_slot_10_fail
1.25 test_slot_10_fail:
1.26 assert_exc_caught test_slot_str_k test_slot_10_pc
1.27 + bra test_slot_11
1.28 + nop
1.29 +test_slot_str_k1:
1.30 + .long test_slot_str
1.31
1.32 +
1.33 test_slot_11: ! TRAPA
1.34 add #1, r12
1.35 expect_exc 0x000001A0
1.36 @@ -171,8 +172,19 @@
1.37 !
1.38 ! Ok now the privilege tests. These should raise SLOT_ILLEGAL when executed
1.39 ! in a delay slot (otherwise it's GENERAL_ILLEGAL)
1.40 -! TODO: need mode-switch code
1.41 +
1.42 +test_slot_18: ! LDC Rn, SPC in user mode
1.43 + add #1, r12
1.44 + expect_exc 0x000001A0
1.45 + stc spc, r4
1.46 + usermode
1.47 +test_slot_18_pc:
1.48 + bsr test_slot_fail
1.49 + ldc r4, spc
1.50 + systemmode
1.51 + assert_exc_caught test_slot_str_k test_slot_18_pc
1.52
1.53 +
1.54 test_slot_end:
1.55 end_test test_slot_str_k
1.56
.