Commit Graph
165 Commits
Author SHA1 Message Date
Alex Beregszaszi 75e4a2be1b Alias sha3 to keccak256 in inline assembly 2017-05-30 10:54:29 +01:00
chriseth 8b29cc5535 Merge pull request #2319 from ethereum/virtualBlocks
Introduce virtual blocks for function arguments.
2017-05-29 16:52:51 +02:00
chriseth 4af55c78eb Introduce virtual blocks for function arguments. 2017-05-29 16:18:16 +02:00
chriseth 9adff68ecc Introduce LabelID typedef. 2017-05-29 15:40:32 +02:00
chriseth 2c4a107f43 Merge pull request #2311 from ethereum/julia-types
Validate types for Julia (part 1)
2017-05-29 14:12:38 +02:00
Alex Beregszaszi 9337003d5e Use the new ParserBase API in AsmParser 2017-05-26 20:44:34 +01:00
Alex Beregszaszi 2a50e869d0 Move builtin type list to the top 2017-05-26 20:43:28 +01:00
Alex Beregszaszi efadf7e41f Change error message for invalid type 2017-05-26 20:42:17 +01:00
Alex Beregszaszi 8fe79fe706 Introduce Julia mode in AsmAnalyzer 2017-05-26 20:39:30 +01:00
Alex Beregszaszi 3b75c5b45f Validate that only basic types are used in Julia 2017-05-26 20:39:10 +01:00
Alex Beregszaszi dda497ca02 Move constructor to AsmAnalyzer header 2017-05-26 20:39:10 +01:00
chriseth 261731f7ee Adapt EVM codegen to new namespace. 2017-05-26 15:08:27 +02:00
chriseth 71b923cc36 Move EVM codegen to libjulia. 2017-05-26 15:03:30 +02:00
chriseth 68e1e464be Merge pull request #2316 from ethereum/inlineasm-cleanup
Better error message for elementary operations
2017-05-26 11:29:51 +02:00
Alex Beregszaszi e410cec19a Better error message for elementary operations 2017-05-26 09:41:53 +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 d745dd6542 Visit case bodies in scope filler 2017-05-26 03:20:34 +01:00
Alex Beregszaszi ba8a79c600 Do not stop on first switch error 2017-05-26 03:20:31 +01:00
Alex Beregszaszi e48e84ca2b Check token within parseCase 2017-05-26 03:20:15 +01:00
Alex Beregszaszi db3d9e0416 Switch cases are not followed by colon 2017-05-26 03:20:15 +01:00
Alex Beregszaszi 66eab1caf6 Change switch case string to Literal 2017-05-26 03:20:10 +01:00
Alex Beregszaszi b5080860d5 Implement switch statement in the assembly parser/printer 2017-05-26 03:16:09 +01:00
Alex Beregszaszi 338202ea96 Uniform error messages 2017-05-24 13:35:52 +01:00
Alex Beregszaszi 56fe3a6ab9 Better error messages during parsing functional instructions 2017-05-24 13:35:52 +01:00
Alex Beregszaszi 74d41ad25f Fix scope assert in AsmAnalyzer 2017-05-24 11:58:49 +01:00
Alex Beregszaszi b77b11781d Rename parseFunctionalInstruction to parseCall 2017-05-24 01:48:54 +01:00
Alex Beregszaszi 4f738ff1c0 Reorder AsmData for readability 2017-05-24 01:48:54 +01:00
Alex Beregszaszi 187fa50751 Rename FunctionalAssignment to Assignment 2017-05-24 01:48:53 +01:00
Alex Beregszaszi f15d6ea45f Rename Assignment to StackAssignment 2017-05-24 01:07:07 +01:00
Alex Beregszaszi 3451a30e5c Display actual error message and not assertion in analysis 2017-05-22 18:45:34 +01:00
Alex Beregszaszi cb4966046d Enable a single right hand item on let 2017-05-22 18:45:34 +01:00
Alex Beregszaszi 15b4d4def2 Support multiple variables in a variable declaration in inline assembly 2017-05-22 18:45:34 +01:00
chriseth 7f5601fd4b Add const 2017-05-19 20:15:28 +02:00
chriseth 69413ae32a Review changes. 2017-05-19 20:12:12 +02:00
chriseth e2b21e1c96 Refactor to abstract assembly to JULIA. 2017-05-19 19:20:28 +02:00
Alex Beregszaszi ebcb27e5c1 Accept bool as a type in Julia mode 2017-05-19 09:44:16 +01:00
Alex Beregszaszi edd0afa3c3 Support true/false literals in inline assembly 2017-05-19 09:44:16 +01:00
Alex Beregszaszi 8688b63fa6 Use boost range adaptors in AsmPrinter 2017-05-05 22:31:22 +01:00
Alex Beregszaszi d6396ee85f Parse types in Julia mode 2017-05-05 22:31:22 +01:00
Alex Beregszaszi 07176e82de Assert that invalid AST elements are not printed in Julia mode 2017-05-05 14:21:25 +01:00
Alex Beregszaszi c423e140ee Add flag for JULIA printing 2017-05-05 14:21:25 +01:00
Alex Beregszaszi 804971973d Show better error message for Julia mode 2017-05-05 14:21:25 +01:00
Alex Beregszaszi f1f209db40 Do not allow literal pushes in Julia 2017-05-05 14:21:25 +01:00
Alex Beregszaszi d61f9c4d4e Disable labels in Julia 2017-05-05 14:21:25 +01:00
chriseth 28f10f4783 Remove error label / invalid jump label. 2017-04-28 13:14:52 +02:00
chriseth f9bccab7b7 Merge pull request #2193 from ethereum/julia-assign-stack
Disallow assign from stack in Julia (=: var)
2017-04-27 22:00:33 +02:00
Alex Beregszaszi 20206a04dd Disallow assign from stack in Julia (=: var) 2017-04-27 19:20:53 +01:00
Alex Beregszaszi 8020144d06 Do not validate identifiers against EVM instructions in JULIA 2017-04-27 18:16:42 +01:00
Alex Beregszaszi 01b60a4f8d Add flag for JULIA parsing 2017-04-27 18:16:42 +01:00