Commit Graph

75 Commits

Author SHA1 Message Date
Alex Beregszaszi
73c5d99bfa Add basic test for shift opcodes 2018-02-27 13:43:04 +01:00
Alex Beregszaszi
ae02bb5aad Raise error on oversized number literals in assembly 2018-02-22 01:02:19 +01:00
chriseth
e2bf5de8a2 Expect end of string at end of top-level block for assembly parser. 2018-02-21 00:41:39 +01:00
Alex Beregszaszi
8b20a7cd53 Disallow non-functional instructions in parseExpression early 2018-01-10 14:16:46 +01:00
Alex Beregszaszi
42f8875770 Show restricted instruction warning before argument mismatch issue 2018-01-08 00:39:22 +00:00
chriseth
767052f2f7 Tests for strict mode. 2018-01-06 03:28:21 +00:00
chriseth
ca0d244bf7 Adjust tests. 2017-12-13 12:28:15 +01:00
Alex Beregszaszi
d57afb20fa Fix warning test for jumps in assembly 2017-12-05 20:27:50 +00:00
Alex Beregszaszi
bc875f6b9c Warn for assembly labels too 2017-12-05 19:27:12 +00:00
chriseth
9232cd2621 Tests. 2017-11-22 16:27:32 +01:00
chriseth
6dbc34e16e If statement for Iulia / inline assembly. 2017-11-22 16:25:24 +01:00
Alex Beregszaszi
3b813ed295 Support multiple assignment in inline assembly 2017-09-20 11:16:23 +02:00
chriseth
97cb571ba4 Tests for recursion in JULIA. 2017-08-22 12:43:44 +02:00
chriseth
2c5985de06 Be more strict about number literals in assembly. 2017-08-21 13:31:28 +02:00
Alex Beregszaszi
cee93d946d Support parsing let statements without a value 2017-07-13 15:18:18 +02:00
Alex Beregszaszi
0c92f53944 Correctly check for jump warnings 2017-06-30 20:47:33 +01:00
Alex Beregszaszi
d4fecc7b11 Warn on JUMP/JUMPI in inline assembly 2017-06-30 20:47:14 +01:00
Alex Beregszaszi
c5339037e9 Test for variable redeclaration in for loops 2017-06-16 11:30:03 +01:00
chriseth
0fd73e5832 Fix test. 2017-06-16 11:29:41 +01:00
chriseth
ea0a86a995 Some more parsing tests. 2017-06-16 11:29:35 +01:00
chriseth
1b3ba7bc57 Some more tests. 2017-06-16 10:56:21 +01:00
Alex Beregszaszi
47925bc14e Parse for statement in assembly parser / printer 2017-06-16 10:56:21 +01:00
Alex Beregszaszi
42b61171d9 Merge pull request #2192 from winsvega/develop
add STATICCALL instruction
2017-06-14 21:03:32 +01:00
Dimitry
c20cdd0a05 add new opcode instructions to the parser
STATICCALL        0xfa  6 inputs  (gas address mem1 mem2 mem3 mem4)
2017-06-14 18:18:12 +02:00
chriseth
1b1f35762e Enforce function arguments when parsing functional instructions. 2017-06-14 14:51:47 +02:00
Yoichi Hirai
464dea2459
test: Add different styles of returndatacopy and returndatasize 2017-06-13 16:57:08 +02:00
Yoichi Hirai
0b22154a75
libevmasm: add RETURNDATACOPY and RETURNDATASIZE 2017-06-13 16:57:02 +02:00
chriseth
bf2b5c746a Use lowercase when reporting instruction error. 2017-06-09 15:17:29 +02:00
Alex Beregszaszi
80227af08a Add test for two functions calling eachother 2017-06-09 10:46:13 +01:00
chriseth
b098b363b5 Test for embedded functions. 2017-06-08 15:52:45 +02:00
chriseth
b75c7b5775 Move inline assembly to new abstraction and test both backends. 2017-06-08 15:52:45 +02:00
chriseth
97cc968a13 Initial EVM1.5 assembly implementation. 2017-06-08 15:52:44 +02:00
Alex Beregszaszi
dcb7c51920 Add inline assembly test for sha3/keccak256 2017-05-30 13:57:44 +01:00
Alex Beregszaszi
98c9051174 Fix expected message in test case 2017-05-26 11:16:12 +01:00
Alex Beregszaszi
05fcf1989c Better error messages for invalid switch cases 2017-05-26 03:20:34 +01:00
Alex Beregszaszi
c64bd33784 Disallow instructions as a switch expression 2017-05-26 03:20:34 +01:00
Alex Beregszaszi
0c5c1ca911 Add tests 2017-05-26 03:20:34 +01:00
Alex Beregszaszi
338202ea96 Uniform error messages 2017-05-24 13:35:52 +01:00
Alex Beregszaszi
130f7419fb Add tests 2017-05-24 13:35:52 +01:00
Alex Beregszaszi
fb46268982 Add tests 2017-05-23 10:24:19 +01:00
Alex Beregszaszi
2ade4fcdd8 Add tests for bool literal 2017-05-19 09:44:16 +01:00
chriseth
28f10f4783 Remove error label / invalid jump label. 2017-04-28 13:14:52 +02:00
Alex Beregszaszi
35f1cf92db Remove parentheses from around function return parameters 2017-04-27 10:08:02 +01:00
Alex Beregszaszi
fa467c365c Fix test build 2017-04-25 16:49:04 +02:00
chriseth
34717838da Review comments. 2017-04-25 16:49:03 +02:00
chriseth
3f1f0316c6 Use raw string for tests. 2017-04-25 16:49:03 +02:00
chriseth
f13c8af3f9 Make tests comply with stack height checks. 2017-04-25 16:49:03 +02:00
chriseth
5d6747eb32 Refactor assembly analysis into scope filling and checking. 2017-04-25 16:49:03 +02:00
chriseth
50894c6af8 Fix compiler warning. 2017-02-20 11:57:50 +01:00
chriseth
d794d35e50 Also check imbalanced stack. 2017-02-20 11:42:23 +01:00