From 9e927edc89336ee409fefdd8cba899ad5b8cd6da Mon Sep 17 00:00:00 2001 From: Erik Stenman Date: Thu, 22 Aug 2019 07:34:16 +0200 Subject: [PATCH] Add more ops tests. --- test/asm_code/balance_loop.fate | 123 ++++++++++++++++++++++++++++++ test/asm_code/bits_diff_loop.fate | 123 ++++++++++++++++++++++++++++++ test/asm_code/blockhash_loop.fate | 123 ++++++++++++++++++++++++++++++ test/asm_code/caller_loop.fate | 123 ++++++++++++++++++++++++++++++ test/asm_code/dup_lop.fate | 123 ++++++++++++++++++++++++++++++ test/asm_code/empty.fate | 5 ++ test/asm_code/gasprice_loop.fate | 123 ++++++++++++++++++++++++++++++ test/asm_code/origin_loop.fate | 123 ++++++++++++++++++++++++++++++ 8 files changed, 866 insertions(+) create mode 100644 test/asm_code/balance_loop.fate create mode 100644 test/asm_code/bits_diff_loop.fate create mode 100644 test/asm_code/blockhash_loop.fate create mode 100644 test/asm_code/caller_loop.fate create mode 100644 test/asm_code/dup_lop.fate create mode 100644 test/asm_code/empty.fate create mode 100644 test/asm_code/gasprice_loop.fate create mode 100644 test/asm_code/origin_loop.fate diff --git a/test/asm_code/balance_loop.fate b/test/asm_code/balance_loop.fate new file mode 100644 index 0000000..0b5a0ca --- /dev/null +++ b/test/asm_code/balance_loop.fate @@ -0,0 +1,123 @@ +;; Contract empty_loop + +FUNCTION run (integer) : integer + STORE var0 arg0 + PUSH (0) + JUMP 1 + + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + BALANCE a + + DEC var0 + GT var1 var0 0 + JUMPIF var1 1 + + RETURNR 0 + diff --git a/test/asm_code/bits_diff_loop.fate b/test/asm_code/bits_diff_loop.fate new file mode 100644 index 0000000..c94b6e6 --- /dev/null +++ b/test/asm_code/bits_diff_loop.fate @@ -0,0 +1,123 @@ +;; Contract empty_loop + +FUNCTION run (integer) : integer + STORE var0 arg0 + PUSH (0) + JUMP 1 + + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + BITS_DIFF a <101010> <010101> + + DEC var0 + GT var1 var0 0 + JUMPIF var1 1 + + RETURNR 0 + diff --git a/test/asm_code/blockhash_loop.fate b/test/asm_code/blockhash_loop.fate new file mode 100644 index 0000000..80dc830 --- /dev/null +++ b/test/asm_code/blockhash_loop.fate @@ -0,0 +1,123 @@ +;; Contract empty_loop + +FUNCTION run (integer) : integer + STORE var0 arg0 + PUSH (0) + JUMP 1 + + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + BLOCKHASH var3 0 + + DEC var0 + GT var1 var0 0 + JUMPIF var1 1 + + RETURNR 0 + diff --git a/test/asm_code/caller_loop.fate b/test/asm_code/caller_loop.fate new file mode 100644 index 0000000..20d4cd9 --- /dev/null +++ b/test/asm_code/caller_loop.fate @@ -0,0 +1,123 @@ +;; Contract empty_loop + +FUNCTION run (integer) : integer + STORE var0 arg0 + PUSH (0) + JUMP 1 + + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + CALLER var3 + + DEC var0 + GT var1 var0 0 + JUMPIF var1 1 + + RETURNR 0 + diff --git a/test/asm_code/dup_lop.fate b/test/asm_code/dup_lop.fate new file mode 100644 index 0000000..effa405 --- /dev/null +++ b/test/asm_code/dup_lop.fate @@ -0,0 +1,123 @@ +;; CONTRACT empty_loop + +FUNCTION run (integer) : integer + STORE var0 arg0 + PUSH 0 + JUMP 1 + + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + DUPA + + DEC var0 + GT var1 var0 0 + JUMPIF var1 1 + + RETURNR 0 + diff --git a/test/asm_code/empty.fate b/test/asm_code/empty.fate new file mode 100644 index 0000000..6fd9951 --- /dev/null +++ b/test/asm_code/empty.fate @@ -0,0 +1,5 @@ +;; CONTRACT empty + +FUNCTION run () : integer + RETURNR 0 + diff --git a/test/asm_code/gasprice_loop.fate b/test/asm_code/gasprice_loop.fate new file mode 100644 index 0000000..e1fd460 --- /dev/null +++ b/test/asm_code/gasprice_loop.fate @@ -0,0 +1,123 @@ +;; Contract empty_loop + +FUNCTION run (integer) : integer + STORE var0 arg0 + PUSH (0) + JUMP 1 + + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + GASPRICE var3 + + DEC var0 + GT var1 var0 0 + JUMPIF var1 1 + + RETURNR 0 + diff --git a/test/asm_code/origin_loop.fate b/test/asm_code/origin_loop.fate new file mode 100644 index 0000000..c876ffb --- /dev/null +++ b/test/asm_code/origin_loop.fate @@ -0,0 +1,123 @@ +;; Contract empty_loop + +FUNCTION run (integer) : integer + STORE var0 arg0 + PUSH (0) + JUMP 1 + + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + ORIGIN var3 + + DEC var0 + GT var1 var0 0 + JUMPIF var1 1 + + RETURNR 0 +