diff options
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/stack_machine_div/instructions.s.tcl | 21 | ||||
l--------- | tests/stack_machine_div/test.v | 1 | ||||
-rw-r--r-- | tests/stack_machine_div/words_to_verify.mem | 6 |
3 files changed, 28 insertions, 0 deletions
diff --git a/tests/stack_machine_div/instructions.s.tcl b/tests/stack_machine_div/instructions.s.tcl new file mode 100755 index 0000000..7f09f20 --- /dev/null +++ b/tests/stack_machine_div/instructions.s.tcl @@ -0,0 +1,21 @@ +#!/usr/bin/env tclsh + +source tclasm.tcl + +### store 2 values to memory, load them back, divide one by another and store +### the result (quotient); this is analogous to addition and substraction tests + +set_sp 0 + +const 777681520 +store h1EEE0 +const 3721 +store h1EEE4 + +load h1EEE0 +load h1EEE4 +# dividing 777681520 by 3721 should yield 208997 r 3683 +div +store h1EEE8 + +halt diff --git a/tests/stack_machine_div/test.v b/tests/stack_machine_div/test.v new file mode 120000 index 0000000..f5b6a59 --- /dev/null +++ b/tests/stack_machine_div/test.v @@ -0,0 +1 @@ +../stack_machine_store/test.v
\ No newline at end of file diff --git a/tests/stack_machine_div/words_to_verify.mem b/tests/stack_machine_div/words_to_verify.mem new file mode 100644 index 0000000..2e6c6fa --- /dev/null +++ b/tests/stack_machine_div/words_to_verify.mem @@ -0,0 +1,6 @@ +// address value + 1EEE0 2E5A7A70 // 777681520 in hex is 2E5A7A70 + + 1EEE4 E89 // 3721 in hex is E89 + + 1EEE8 33065 // 208997 in hex is 33065 |