summaryrefslogtreecommitdiff
path: root/tests/cris
diff options
context:
space:
mode:
authoredgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>2008-06-06 11:05:18 +0000
committeredgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>2008-06-06 11:05:18 +0000
commit9012c2bf32aaf34a5ee12c3d9c8718af1530eeec (patch)
tree020d9fb7e1ec0a90043a92fadc82365b15a7b8ad /tests/cris
parent54f25d0af585cb8d8b1288191c06a9abd193a854 (diff)
Add a testcase for broken x arithmetic sequences.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4681 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'tests/cris')
-rw-r--r--tests/cris/check_xarith.s26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/cris/check_xarith.s b/tests/cris/check_xarith.s
index d0356abed..80038b2ab 100644
--- a/tests/cris/check_xarith.s
+++ b/tests/cris/check_xarith.s
@@ -42,5 +42,31 @@
nop
fail
1:
+
+ ;; test for broken X sequence, run it several times.
+ moveq 8, $r0
+1:
+ moveq 0, $r3
+ move.d $r0, $r1
+ andq 1, $r1
+ lslq 4, $r1
+ moveq 1, $r2
+ or.d $r1, $r2
+ ba 2f
+ move $r2, $ccs
+2:
+ addq 0, $r3
+ move.d $r0, $r4
+ move.d $r1, $r5
+ move.d $r2, $r6
+ move.d $r3, $r7
+ lsrq 4, $r1
+ move.d $r1, $r8
+ xor $r1, $r3
+ checkr3 0
+ subq 1, $r0
+ bne 1b
+ nop
+
pass
quit