aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/inlineasm/AsmAnalysis.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Moving files from libsolidity/inlineasm/*.{cpp,h} to libyul/.Christian Parpart2018-11-231-631/+0
|
* Introduce namespace `langutil` in liblangutil directory.Christian Parpart2018-11-221-0/+1
| | | | | | | Also: - Use {}-style list initialisation for SourceLocation construction - Introduce new system includes - Changes the API of the Scanner to take source as value (with move) as opposed to as a reference
* Isolating files shared between Yul- and Solidity language frontend.Christian Parpart2018-11-221-1/+1
|
* Performance: Replace string by special single-copy YulString class.chriseth2018-11-081-11/+11
|
* Renaming namespace dev::julia to dev::yul.Christian Parpart2018-10-151-2/+2
|
* Add assembly support for EXTCODEHASH (EIP-1052)Jared Wasinger2018-09-261-1/+11
|
* CREATE2 is part of Constantinople nowAlex Beregszaszi2018-09-261-12/+5
| | | | Also add hasCreate2 to EVMVersion
* Merge pull request #4753 from mattaereal/boost-to-string-patchAlex Beregszaszi2018-08-081-5/+5
|\ | | | | Replace boost:lexical_cast<std::string> for std::to_string.
| * Removing std:: from std::to_string and include for boost/lexical_castMatías Aereal Aeón2018-08-081-5/+5
| |
| * Replace boost:lexical_cast<std::string> for std::to_string.Matías Aereal Aeón2018-08-081-5/+5
| |
* | Disallow loos assembly in Solidity by permanently setting it to SyntaxError ↵Christian Parpart2018-08-021-3/+3
|/ | | | (from Warning)
* Rename JULIA/IULIA to Yul in assembly interfaceAlex Beregszaszi2018-06-141-3/+3
|
* Assert that mandatory fields in the AST are present in AsmAnalysisAlex Beregszaszi2018-05-101-0/+10
|
* Warn about using loose inline assembly features as experimental 0.5.0 feature.chriseth2018-03-071-7/+38
|
* Only warn for shift instructions if not using constantinopleAlex Beregszaszi2018-03-021-9/+9
|
* Provide EVM version to assembly analysis.chriseth2018-03-021-9/+23
|
* Remove ROL/ROR as they are not part of EIP145 anymoreAlex Beregszaszi2018-02-271-3/+1
|
* Warn on using shift instructionsAlex Beregszaszi2018-02-271-0/+16
|
* Add assertion for boolean literals in Julia-modeAlex Beregszaszi2018-02-221-0/+5
|
* Raise error on oversized number literals in assemblyAlex Beregszaszi2018-02-221-0/+8
|
* Split inline assembly into loose and strict flavours.chriseth2018-01-061-8/+9
|
* Separate expression and statement.chriseth2017-12-131-3/+13
|
* Suggest the "if" statement too instead of jumpsAlex Beregszaszi2017-12-061-1/+1
|
* Warn for assembly labels tooAlex Beregszaszi2017-12-061-2/+3
|
* Split Instruction and FunctionalInstruction in JuliaAlex Beregszaszi2017-12-051-3/+4
|
* Rename arguments to paramaters and returns to returnVariables.chriseth2017-12-011-2/+2
|
* If statement for Iulia / inline assembly.chriseth2017-11-221-0/+16
|
* Support multiple assignment in inline assemblyAlex Beregszaszi2017-09-201-3/+17
|
* Rename expectedItems to numVariablesAlex Beregszaszi2017-07-131-3/+3
|
* Support parsing let statements without a valueAlex Beregszaszi2017-07-131-5/+11
|
* Warn on JUMP/JUMPI in inline assemblyAlex Beregszaszi2017-07-011-3/+10
|
* Merge interface/Exceptions and interface/UtilsAlex Beregszaszi2017-06-221-1/+0
|
* Helper to count the number of variables in a scope.chriseth2017-06-161-3/+1
|
* For loops analysis.chriseth2017-06-161-2/+24
|
* Parse for statement in assembly parser / printerAlex Beregszaszi2017-06-161-0/+5
|
* add new opcode instructions to the parserDimitry2017-06-151-17/+11
| | | | STATICCALL 0xfa 6 inputs (gas address mem1 mem2 mem3 mem4)
* Display user friendly instruction nameAlex Beregszaszi2017-06-141-5/+12
|
* Issue warning for using CREATE2 in inline assemblyAlex Beregszaszi2017-06-141-2/+3
|
* Merge pull request #2389 from ethereum/moveLabelIDschriseth2017-06-141-4/+4
|\ | | | | Move LabelIDs to generation phase.
| * Move "active variable" to analysis phase.chriseth2017-06-141-4/+4
| |
* | Warn if returndatasize/returndatacopy is usedAlex Beregszaszi2017-06-131-1/+19
|/
* Visitor bugfix.chriseth2017-06-081-6/+17
|
* Introduce machine-dependent stack adjustment.chriseth2017-06-081-4/+2
|
* Initial EVM1.5 assembly implementation.chriseth2017-06-081-5/+14
|
* Add comma.chriseth2017-06-011-1/+1
|
* Improved error message.chriseth2017-06-011-1/+1
|
* Refactor to use expectExpression in analyzer.chriseth2017-06-011-37/+23
|
* Refactor error reportingRhett Aultman2017-05-301-94/+59
| | | | | | | | | This commit introduces ErrorReporter, a utility class which consolidates all of the error logging functionality into a common set of functions. It also replaces all direct interactions with an ErrorList with calls to an ErrorReporter. This commit resolves issue #2209
* Introduce virtual blocks for function arguments.chriseth2017-05-291-7/+8
|
* Move builtin type list to the topAlex Beregszaszi2017-05-271-1/+7
|
* Change error message for invalid typeAlex Beregszaszi2017-05-271-1/+1
|
* Introduce Julia mode in AsmAnalyzerAlex Beregszaszi2017-05-271-3/+6
|
* Validate that only basic types are used in JuliaAlex Beregszaszi2017-05-271-0/+20
|
* Move constructor to AsmAnalyzer headerAlex Beregszaszi2017-05-271-9/+0
|
* Adapt EVM codegen to new namespace.chriseth2017-05-261-3/+3
|
* Do not stop on first switch errorAlex Beregszaszi2017-05-261-5/+7
|
* Change switch case string to LiteralAlex Beregszaszi2017-05-261-11/+19
|
* Implement switch statement in the assembly parser/printerAlex Beregszaszi2017-05-261-0/+32
|
* Fix scope assert in AsmAnalyzerAlex Beregszaszi2017-05-241-0/+1
|
* Rename FunctionalAssignment to AssignmentAlex Beregszaszi2017-05-241-1/+1
|
* Rename Assignment to StackAssignmentAlex Beregszaszi2017-05-241-1/+1
|
* Display actual error message and not assertion in analysisAlex Beregszaszi2017-05-231-1/+9
|
* Enable a single right hand item on letAlex Beregszaszi2017-05-231-19/+2
|
* Support multiple variables in a variable declaration in inline assemblyAlex Beregszaszi2017-05-231-4/+24
|
* Support true/false literals in inline assemblyAlex Beregszaszi2017-05-191-1/+1
|
* Parse types in Julia modeAlex Beregszaszi2017-05-061-4/+5
|
* Refactor to combined scope and stack height info.chriseth2017-04-261-25/+19
|
* Store stack height in analysis phase.chriseth2017-04-261-3/+27
|
* Fix storage access tests.chriseth2017-04-251-10/+16
|
* Another stack check.chriseth2017-04-251-0/+2
|
* Only allow access to local variables and only if they have a stack size of one.chriseth2017-04-251-1/+1
|
* Check again that instruction argument count is correct.chriseth2017-04-251-0/+1
|
* Review comments and cleanup.chriseth2017-04-251-4/+3
|
* Perform stack height checks in assembly analysis phase.chriseth2017-04-251-21/+133
|
* Add some missing error locations.chriseth2017-04-251-2/+3
|
* Use actual type checking phase of assembler.chriseth2017-04-251-5/+19
|
* Refactor assembly analysis into scope filling and checking.chriseth2017-04-251-104/+125
|
* Register functions.chriseth2017-04-251-25/+71
|
* Fix error message.chriseth2017-03-031-1/+1
|
* Remove stack annotations again.chriseth2017-03-031-30/+1
|
* Slightly cleaner label ids.chriseth2017-03-031-5/+6
|
* Partially add functions.chriseth2017-03-031-3/+33
|
* Refactor CodeGen to recurse on blocks.chriseth2017-03-031-15/+14
|
* Analysis refactoring.chriseth2017-03-031-0/+179