Added stdlib_tests for memset and memcpy subroutines.
authorAaron Taylor <ataylor@subgeniuskitty.com>
Mon, 29 Jul 2019 22:19:58 +0000 (15:19 -0700)
committerAaron Taylor <ataylor@subgeniuskitty.com>
Mon, 29 Jul 2019 22:19:58 +0000 (15:19 -0700)
stdlib_tests/2003_memset.pvvs [new file with mode: 0644]
stdlib_tests/2004_memcpy.pvvs [new file with mode: 0644]
stdlib_tests/vv_test.py

diff --git a/stdlib_tests/2003_memset.pvvs b/stdlib_tests/2003_memset.pvvs
new file mode 100644 (file)
index 0000000..cef959c
--- /dev/null
@@ -0,0 +1,15 @@
+@ Push '42' onto heap[32]-heap[33].
+SSSTSTSTSN      | PUSH 42 (pattern)
+SSSTSSSSSN      | PUSH 32 (address)
+SSSTN           | PUSH 1 (count)
+NSTTTSSSN       | JSR > 11000 (memset)
+
+@ Print heap[32]-heap[33]
+SSSTSSSSTN      | PUSH 33 (end address)
+SSSTSSSSSN      | PUSH 32 (start address)
+NSTTTTSSSN      | JSR > 111000 (dump heap)
+
+NNN             | DIE
+
+#include <heap.pvvs>
+#include <debug.pvvs>
diff --git a/stdlib_tests/2004_memcpy.pvvs b/stdlib_tests/2004_memcpy.pvvs
new file mode 100644 (file)
index 0000000..d4958eb
--- /dev/null
@@ -0,0 +1,21 @@
+@ Push '42' onto heap[32]-heap[33].
+SSSTSTSTSN      | PUSH 42 (pattern)
+SSSTSSSSSN      | PUSH 32 (address)
+SSSTN           | PUSH 1 (count)
+NSTTTSSSN       | JSR > 11000 (memset)
+
+@ Copy '42' onto heap[34]-heap[35]
+SSSTSSSSSN      | PUSH 32 (source)
+SSSTSSSTSN      | PUSH 34 (destination)
+SSSTN           | PUSH 1 (count)
+NSTTTSSTN       | JSR > 11001 (memcpy)
+
+@ Print heap[34]-heap[35]
+SSSTSSSTTN      | PUSH 35 (end address)
+SSSTSSSTSN      | PUSH 34 (start address)
+NSTTTTSSSN      | JSR > 111000 (dump heap)
+
+NNN             | DIE
+
+#include <heap.pvvs>
+#include <debug.pvvs>
index 5e2fd9e..f56f4fd 100755 (executable)
@@ -25,6 +25,8 @@ tests = [
         ['1003_deepdup', '', 'TOS:\n15:\t+1\n14:\t+244\n13:\t+1\n12:\t+1\n11:\t+1\n10:\t+1\n9:\t+1\n8:\t+1\n7:\t+1\n6:\t+1\n5:\t+1\n4:\t+1\n3:\t+1\n2:\t+1\n1:\t+244\n'],
         ['2001_spew', '', '32:\t+242\n33:\t+243\n34:\t+244\n'],
         ['2002_slurp', '', 'TOS:\n3:\t+242\n2:\t+243\n1:\t+244\n'],
         ['1003_deepdup', '', 'TOS:\n15:\t+1\n14:\t+244\n13:\t+1\n12:\t+1\n11:\t+1\n10:\t+1\n9:\t+1\n8:\t+1\n7:\t+1\n6:\t+1\n5:\t+1\n4:\t+1\n3:\t+1\n2:\t+1\n1:\t+244\n'],
         ['2001_spew', '', '32:\t+242\n33:\t+243\n34:\t+244\n'],
         ['2002_slurp', '', 'TOS:\n3:\t+242\n2:\t+243\n1:\t+244\n'],
+        ['2003_memset', '', '32:\t+42\n33:\t+42\n'],
+        ['2004_memcpy', '', '34:\t+42\n35:\t+42\n'],
         ] 
 
 for test in tests:
         ] 
 
 for test in tests: