diff options
author | Wojciech Kosior <kwojtus@protonmail.com> | 2020-09-03 20:22:41 +0200 |
---|---|---|
committer | Wojciech Kosior <kwojtus@protonmail.com> | 2020-09-03 20:22:41 +0200 |
commit | efd0269b55e2db03f5c12d6f47b00b0c2a57ff66 (patch) | |
tree | d5715c26f8a7b935baea0af6558f9d415e110f21 /tests/stack_machine_old_jump/instructions.s.tcl | |
parent | 43f4e586acf76f3ec08d5892ba784ba6ac5d1932 (diff) | |
download | AGH-engineering-thesis-efd0269b55e2db03f5c12d6f47b00b0c2a57ff66.tar.gz AGH-engineering-thesis-efd0269b55e2db03f5c12d6f47b00b0c2a57ff66.zip |
rename stack_machine to stack_machine_old (prepare for redesign of the machine)
Diffstat (limited to 'tests/stack_machine_old_jump/instructions.s.tcl')
-rwxr-xr-x | tests/stack_machine_old_jump/instructions.s.tcl | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/stack_machine_old_jump/instructions.s.tcl b/tests/stack_machine_old_jump/instructions.s.tcl new file mode 100755 index 0000000..f681fc9 --- /dev/null +++ b/tests/stack_machine_old_jump/instructions.s.tcl @@ -0,0 +1,22 @@ +#!/usr/bin/env tclsh + +source tclasm.tcl + +## Let there be 2 pieces of code - each one storing a different value in memory +## and halting afterwards. Jump instruction should cause the second piece of +## code to execute instead of the first. We'll verify that by checking, which +## value got written. + +## Ufortunately, our assembly currently doesn't compute label addresses for us. + +# Each of those 4 instructions should get encoded into 1 16-bit word, so they +# will take 8 bytes total. Hence jump to address 8 is needed to skip them. +jump 8 +const h12 +store@ h00100 +halt + +# address 8 here +const h34 +store@ h00100 +halt |