Search
lxdream.org :: lxdream/test/sh4/fmov.s :: diff
lxdream 0.9.1
released Jun 29
Download Now
filename test/sh4/fmov.s
changeset 732:f05753bbe723
prev358:65043a8f5785
author nkeynes
date Thu Jul 10 01:46:00 2008 +0000 (14 years ago)
permissions -rw-r--r--
last change Fix alignment check for 64-bit FMOVs
Add missing MMU code etc to FMOV emu implementation
file annotate diff log raw
1.1 --- a/test/sh4/fmov.s Thu Aug 23 12:31:31 2007 +0000
1.2 +++ b/test/sh4/fmov.s Thu Jul 10 01:46:00 2008 +0000
1.3 @@ -304,17 +304,83 @@
1.4 .long 0
1.5 test_fmov_7_data_b:
1.6 .long 0
1.7 +test_fmov_str_k:
1.8 + .long test_fmov_str
1.9
1.10 -test_fmov_8:
1.11 +! Test non-64-bit aligned memory read/writes with FMOV variants
1.12 +
1.13 +test_fmov_8: ! @Rm to DRn
1.14 + add #1, r12
1.15 + mova test_fmov_ua64_a, r0
1.16 + expect_exc 0x000000E0
1.17 +test_fmov_8_exc_pc:
1.18 + fmov @r0, fr8
1.19 + assert_exc_caught test_fmov_str_k_2 test_fmov_8_exc_pc
1.20 +
1.21 +test_fmov_9: ! DRm to @Rm
1.22 + add #1, r12
1.23 + mova test_fmov_ua64_a, r0
1.24 + expect_exc 0x00000100
1.25 +test_fmov_9_exc_pc:
1.26 + fmov fr8, @r0
1.27 + assert_exc_caught test_fmov_str_k_2 test_fmov_9_exc_pc
1.28 +
1.29 +test_fmov_10: ! @Rm+ to DRn
1.30 + add #1, r12
1.31 + mova test_fmov_ua64_a, r0
1.32 + expect_exc 0x000000E0
1.33 +test_fmov_10_exc_pc:
1.34 + fmov @r0+, fr8
1.35 + assert_exc_caught test_fmov_str_k_2 test_fmov_10_exc_pc
1.36 +
1.37 +test_fmov_11: ! DRm to @Rm-
1.38 + add #1, r12
1.39 + mova test_fmov_ua64_a, r0
1.40 + expect_exc 0x00000100
1.41 +test_fmov_11_exc_pc:
1.42 + fmov fr8, @-r0
1.43 + assert_exc_caught test_fmov_str_k_2 test_fmov_11_exc_pc
1.44 +
1.45 +test_fmov_12: ! @(R0,Rm) to DRn
1.46 + add #1, r12
1.47 + mova test_fmov_ua64_pad, r0
1.48 + mov #4, r4
1.49 + expect_exc 0x000000E0
1.50 +test_fmov_12_exc_pc:
1.51 + fmov @(r0,r4), fr8
1.52 + assert_exc_caught test_fmov_str_k_2 test_fmov_12_exc_pc
1.53 +
1.54 +test_fmov_13: ! DRm to @(R0,Rn)
1.55 + add #1, r12
1.56 + mova test_fmov_ua64_pad, r0
1.57 + mov #4, r4
1.58 + expect_exc 0x00000100
1.59 +test_fmov_13_exc_pc:
1.60 + fmov fr8, @(r0,r4)
1.61 + assert_exc_caught test_fmov_str_k_2 test_fmov_13_exc_pc
1.62 +
1.63 +
1.64 + bra test_fmov_end
1.65 +
1.66 +
1.67 +.align 8
1.68 +test_fmov_ua64_pad:
1.69 + .long 0 ! ensure not aligned on 64-bit boundaries
1.70 +test_fmov_ua64_a:
1.71 + .long 0x09080706
1.72 +test_fmov_u64_b:
1.73 + .long 0x14253647
1.74 +
1.75
1.76 test_fmov_end:
1.77 xor r0, r0
1.78 lds r0, fpscr
1.79 - end_test test_fmov_str_k
1.80 + end_test test_fmov_str_k_2
1.81
1.82 test_fmov_str:
1.83 .string "FMOV"
1.84
1.85 .align 4
1.86 -test_fmov_str_k:
1.87 +test_fmov_str_k_2:
1.88 .long test_fmov_str
1.89 +
1.90 \ No newline at end of file
.