summaryrefslogtreecommitdiff
path: root/sim/testsuite/d10v-elf/t-sadd.s
diff options
context:
space:
mode:
authorStan Shebs <shebs@apple.com>1999-04-16 01:35:26 +0000
committerStan Shebs <shebs@apple.com>1999-04-16 01:35:26 +0000
commit14cd51f7793a9ce07bc435069f57269450141363 (patch)
tree280a2da48f771d61be5b451ddbacdf9ef8e9ad13 /sim/testsuite/d10v-elf/t-sadd.s
downloadgdb-14cd51f7793a9ce07bc435069f57269450141363.tar.gz
Initial revision
Diffstat (limited to 'sim/testsuite/d10v-elf/t-sadd.s')
-rw-r--r--sim/testsuite/d10v-elf/t-sadd.s38
1 files changed, 38 insertions, 0 deletions
diff --git a/sim/testsuite/d10v-elf/t-sadd.s b/sim/testsuite/d10v-elf/t-sadd.s
new file mode 100644
index 00000000000..f3e4ebe3da4
--- /dev/null
+++ b/sim/testsuite/d10v-elf/t-sadd.s
@@ -0,0 +1,38 @@
+.include "t-macros.i"
+
+ start
+
+ PSW_BITS = PSW_FX|PSW_ST|PSW_SM
+ loadpsw2 PSW_BITS
+
+ ;; Test normal sadd
+
+ loadacc2 a0 0x00 0x7fff 0xffff
+ loadacc2 a1 0xff 0x8000 0x0000
+ sadd a1, a0
+ checkacc2 1 a0 0x00 0x7fff 0xffff
+ checkacc2 2 a1 0xff 0x8000 0x7fff
+
+ ;; Test overflow
+
+ loadacc2 a0 0x00 0x0000 0x0000
+ loadacc2 a1 0x01 0x8000 0x0000
+ sadd a1, a0
+ checkacc2 3 a0 0x00 0x0000 0x0000
+ checkacc2 4 a1 0x00 0x7fff 0xffff
+
+ loadacc2 a0 0x00 0xffff 0xffff
+ loadacc2 a1 0x00 0xffff 0xffff
+ sadd a1, a0
+ checkacc2 5 a1 0x00 0x7fff 0xffff
+ checkacc2 6 a0 0x00 0xffff 0xffff
+
+ ;; Test underflow
+
+ loadacc2 a0 0x00 0x0000 0x0000
+ loadacc2 a1 0x80 0x8000 0x0000
+ sadd a1, a0
+ checkacc2 7 a0 0x00 0x0000 0x0000
+ checkacc2 8 a1 0xff 0x8000 0x0000
+
+ exit0