Alex Beregszaszi
|
5a54cd5c70
|
Only warn for shift instructions if not using constantinople
|
2018-03-01 17:19:35 +01:00 |
|
chriseth
|
dc317a44e0
|
Provide EVM version to assembly analysis.
|
2018-03-01 17:19:35 +01:00 |
|
Alex Beregszaszi
|
afa4a48e37
|
Remove ROL/ROR as they are not part of EIP145 anymore
|
2018-02-27 13:42:41 +01:00 |
|
Alex Beregszaszi
|
468d0f6199
|
Warn on using shift instructions
|
2018-02-27 13:42:31 +01:00 |
|
Alex Beregszaszi
|
42856e0f53
|
Add assertion for boolean literals in Julia-mode
|
2018-02-22 01:02:23 +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
|
124190336b
|
Split inline assembly into loose and strict flavours.
|
2018-01-06 01:23:38 +00:00 |
|
Alex Beregszaszi
|
fcbdaa32b9
|
Simplify parseElementaryOperation in regards to special instructions
|
2018-01-06 00:39:06 +00:00 |
|
Alex Beregszaszi
|
a91393f4d7
|
Support some restricted tokens (return, byte, address) as identifiers in Julia
|
2018-01-05 15:53:49 +00:00 |
|
chriseth
|
54b6739962
|
Separate expression and statement.
|
2017-12-13 12:28:15 +01:00 |
|
Alex Beregszaszi
|
793537e089
|
Suggest the "if" statement too instead of jumps
|
2017-12-05 19:27:12 +00:00 |
|
Alex Beregszaszi
|
bc875f6b9c
|
Warn for assembly labels too
|
2017-12-05 19:27:12 +00:00 |
|
Alex Beregszaszi
|
745eefa36f
|
Split Instruction and FunctionalInstruction in Julia
|
2017-12-05 14:52:11 +00:00 |
|
chriseth
|
240c79e614
|
Merge pull request #3265 from ethereum/rename_args_to_params
Rename arguments to parameters.
|
2017-12-04 06:49:44 -05:00 |
|
chriseth
|
43bb915454
|
Rename arguments to paramaters and returns to returnVariables.
|
2017-12-01 16:18:01 +01:00 |
|
Alex Beregszaszi
|
9f756e3797
|
Include missing forward declarations in AsmDataForward
|
2017-11-29 21:43:44 +00:00 |
|
chriseth
|
6dbc34e16e
|
If statement for Iulia / inline assembly.
|
2017-11-22 16:25:24 +01:00 |
|
Alex Beregszaszi
|
8a32d7c3d7
|
Add helpers for isPush/isDup/isSwap
|
2017-10-02 10:34:54 +01:00 |
|
Alex Beregszaszi
|
3b813ed295
|
Support multiple assignment in inline assembly
|
2017-09-20 11:16:23 +02:00 |
|
chriseth
|
73771f5bb2
|
Named assembly labels.
|
2017-09-15 20:44:49 +01:00 |
|
chriseth
|
692e4c57e8
|
Check recursion depth in assembly parser.
|
2017-08-22 12:44:22 +02:00 |
|
Alex Beregszaszi
|
9897c56b2c
|
Mark a lot of functions static (where possible)
|
2017-08-22 10:51:46 +01:00 |
|
Alex Beregszaszi
|
2a5772cff7
|
Mark appropriate constructors explicit
|
2017-08-22 10:51:46 +01:00 |
|
Alex Beregszaszi
|
e2cfc9ee92
|
Mark a lot of functions const (where possible)
|
2017-08-22 10:51:46 +01:00 |
|
chriseth
|
2c5985de06
|
Be more strict about number literals in assembly.
|
2017-08-21 13:31:28 +02:00 |
|
Alex Beregszaszi
|
b5da5f6e42
|
Merge pull request #2504 from ethereum/inlineasm-decl-empty
Support variable declarations without an assignment in assembly
|
2017-07-13 16:58:24 +02:00 |
|
Alex Beregszaszi
|
8d90e6fc4e
|
Rename expectedItems to numVariables
|
2017-07-13 15:18:40 +02:00 |
|
Alex Beregszaszi
|
cee93d946d
|
Support parsing let statements without a value
|
2017-07-13 15:18:18 +02:00 |
|
chriseth
|
09e821619e
|
Refactor exceptions and provide comment function.
|
2017-07-13 11:34:03 +02:00 |
|
Alex Beregszaszi
|
7798a27112
|
Add Julia mode as an option to EVMCodeTransform
|
2017-07-03 10:13:36 +01:00 |
|
Alex Beregszaszi
|
d4fecc7b11
|
Warn on JUMP/JUMPI in inline assembly
|
2017-06-30 20:47:14 +01:00 |
|
Alex Beregszaszi
|
5cf2332d6d
|
Support appendAssemblySize() in AbstractAssembly
|
2017-06-23 00:09:35 +01:00 |
|
Alex Beregszaszi
|
d5f8ce90c7
|
Merge interface/Exceptions and interface/Utils
|
2017-06-22 11:25:07 +01:00 |
|
chriseth
|
868b5ad3aa
|
Split block code generation into main and finalize.
|
2017-06-16 10:56:21 +01:00 |
|
chriseth
|
78b49db779
|
Helper to count the number of variables in a scope.
|
2017-06-16 10:56:21 +01:00 |
|
chriseth
|
8e5c4bf21d
|
Add include file to forward-declare inline assembly structs.
|
2017-06-16 10:56:21 +01:00 |
|
chriseth
|
49b1112117
|
For loops analysis.
|
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 |
|
chriseth
|
fd5bf16101
|
Merge pull request #2384 from ethereum/parseFunctionalInstructions
Enforce function arguments when parsing functional instructions.
|
2017-06-14 18:35:16 +02: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 |
|
Alex Beregszaszi
|
a921bd0ae4
|
Display user friendly instruction name
|
2017-06-14 16:00:39 +02:00 |
|
Alex Beregszaszi
|
494b9dbfaa
|
Issue warning for using CREATE2 in inline assembly
|
2017-06-14 16:00:39 +02:00 |
|
chriseth
|
1b1f35762e
|
Enforce function arguments when parsing functional instructions.
|
2017-06-14 14:51:47 +02:00 |
|
chriseth
|
43cfab70d0
|
Merge pull request #2389 from ethereum/moveLabelIDs
Move LabelIDs to generation phase.
|
2017-06-14 14:12:33 +02:00 |
|
chriseth
|
154002cda0
|
Move "active variable" to analysis phase.
|
2017-06-14 00:10:33 +02:00 |
|
chriseth
|
1bf717fd65
|
Remove struct constructor.
|
2017-06-14 00:03:08 +02:00 |
|