Commit Graph
613 Commits
Author SHA1 Message Date
Harikrishnan Mulackal 5c6e7f03b4 Extended LoopInvariantCodeMotion for storage and state 2020-08-19 12:41:29 +02:00
Harikrishnan Mulackal 3cbe65e4f3 Refactor SideEffects struct 2020-08-18 14:53:59 +02:00
Alex BeregszasziandDaniel Kirchner 3a617f9cf2 Validate expected literal kind for yul::Dialect builtins
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
2020-08-05 11:37:04 +01:00
Alex BeregszasziandDaniel Kirchner f6a57af809 Add LiteralKind to Dialect.literalArguments
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
2020-08-05 11:37:00 +01:00
Alex Beregszaszi 24bb6252ac Merge Parser::instructions() into EVMDialect 2020-07-29 13:15:54 +01:00
Alex Beregszaszi d41fc31046 Do not use Parser::instructions() but depend on the dialect in NameDispenser and VarNameCleaner 2020-07-29 13:15:54 +01:00
Alex Beregszaszi d9cb8c8c5e Add ScannerKind and replace supportPeriodInIdentifier 2020-07-28 12:31:08 +01:00
Alex Beregszaszi 291c00c3de Remove errenous error duplication and move some tests around 2020-07-28 10:45:27 +01:00
chriseth b1f79072df Fix stack compressor wrt literal arguments. 2020-07-23 14:03:51 +02:00
chriseth 6bb6783d39 Merge remote-tracking branch 'origin/develop' into breaking 2020-07-22 15:26:44 +02:00
Djordje MijovicandKamil Śliwak 6f97e6153c [yul] Adding support for accessing subobjects via .
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2020-07-21 17:56:11 +02:00
Djordje Mijovic 952101996c Removing expectDeposit() from AsmAnalysis as unused function 2020-07-21 12:55:05 +02:00
chriseth 9be5ed1220 Merge remote-tracking branch 'origin/develop' into breaking 2020-07-21 11:35:28 +02:00
chriseth 1c9179683e Merge pull request #9433 from ethereum/reportAllStackErrors
Report all stack errors
2020-07-20 15:44:51 +02:00
chriseth f5d8636d28 Document variableHeightDiff. 2020-07-20 15:44:29 +02:00
Sachin Grover b7adb2aa42 Add SPDX license identifier if not present already in source file
Fixes: #9220
2020-07-17 20:24:12 +05:30
Daniel Kirchner 92cd1ddb7d Add markAsInvalid to the various assemblies. 2020-07-16 17:38:13 +02:00
Daniel Kirchner 579e4b5a69 Report all stack errors in the EVM code transform. 2020-07-16 17:38:04 +02:00
chriseth f945163909 Merge pull request #9432 from ethereum/develop
Merge develop into breaking.
2020-07-16 17:14:45 +02:00
Daniel Kirchner 99d831d7d1 Extract recursive function detection from Semantics into the CallGraph. 2020-07-15 20:30:52 +02:00
Alex Beregszaszi 870ea98c21 Prefix EIP-615 opcodes with EIP615 in Instructions 2020-07-13 17:34:19 +01:00
Daniel Kirchner def0ebbb3e Free variables directly after visiting RHS of Variable Declarations during EVMCodeTransform. 2020-07-13 17:36:15 +02:00
chriseth 8eee3ed3a2 Merge pull request #9388 from ethereum/develop
Merge develop into breaking.
2020-07-13 14:55:21 +02:00
Alex Beregszaszi 87557896ed Add ctz and popcnt to WasmDialect 2020-07-13 11:10:14 +01:00
chriseth c90d3a3558 Merge pull request #9384 from ethereum/yul-err-typo
Fix missing quote in error message for invalid Yul types
2020-07-13 11:28:55 +02:00
Alex Beregszaszi 20dd66f398 Fix missing quote in error message for invalid Yul types 2020-07-10 21:06:09 +01:00
Djordje MijovicandKamil Śliwak 547590b972 Fixing additional signedness errors after adding -Wsign-conversion flag
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2020-07-09 17:22:45 +02:00
chriseth 64b6524bdb Merge remote-tracking branch 'origin/develop' into breaking 2020-07-08 09:37:14 +02:00
Alex Beregszaszi fc8947d3e8 Restrict dots in Yul identifiers 2020-07-07 13:13:58 +01:00
chriseth ec8be81258 Merge pull request #9243 from ethereum/jumpTypesForYul
Jump types for yul functions.
2020-07-07 12:21:14 +02:00
chriseth d72aae20aa Merge pull request #9321 from ethereum/multiYulAssign
Disallow the same yul variable occurring multiple times on the LHS of an assignment.
2020-07-07 11:07:05 +02:00
Daniel Kirchner 70615a73a4 Disallow the same yul variable occurring multiple times on the LHS of an assignment. 2020-07-07 10:52:47 +02:00
chriseth 982a269b2b Merge pull request #9325 from ethereum/develop
Merge develop into breaking.
2020-07-06 19:11:02 +02:00
chriseth 4d2b9cd38f Jump types for yul functions. 2020-07-06 18:12:54 +02:00
Alex Beregszaszi 65c50b14c8 Remove unused instructionNames() function in AsmParser 2020-07-06 16:48:28 +01:00
Alex Beregszaszi 60d4b1e8cc Rename drop to i64.drop in WasmDialect
Also properly implement support for both i32.drop and i64.drop in BinaryTransform, TextTransform, and YulInterpreter
2020-07-06 15:47:17 +01:00
Alex Beregszaszi 67ebb206ea Turn Instruction::JUMP* into yulAssert 2020-07-06 14:46:36 +01:00
Alex Beregszaszi 55e41b602a Explicitly check for jump instructions in EVMDialect 2020-07-06 14:46:24 +01:00
chriseth ab68406006 Merge remote-tracking branch 'origin/develop' into breaking 2020-07-06 15:25:25 +02:00
Daniel Kirchner b9b24daa8a Merge pull request #9295 from ethereum/requireFLIR
Require for loop init rewriter for SSA.
2020-07-04 17:51:57 +02:00
chrisethandHarikrishnan Mulackal 711ed588d7 Require for loop init rewriter for SSA.
Co-authored-by: Harikrishnan Mulackal <webmail.hari@gmail.com>
2020-07-03 19:24:31 +02:00
Daniel Kirchner 8c5fce5b31 Merge pull request #9304 from ethereum/yul-assert
Only use yulAssert and not solAssert in libyul
2020-07-03 19:00:14 +02:00
Alex Beregszaszi 889131321a Merge pull request #9298 from ethereum/yul-evm-version-tests
Use different error code for various EVM features in Yul
2020-07-03 17:05:01 +01:00
Alex Beregszaszi 4c7c7c0270 Only use yulAssert and not solAssert in libyul 2020-07-03 15:46:50 +01:00
Alex Beregszaszi 2e6cbd8718 Rename warnOnInstructions to validateInstructions 2020-07-03 12:35:22 +01:00
Alex Beregszaszi d211a45aa4 Use different error code for various EVM features in Yul 2020-07-03 12:35:22 +01:00
Kamil Śliwak 356b9a7904 Restrict linkersymbol builtin to object dialect of Yul 2020-07-02 14:41:40 +02:00
chriseth 3d602b3190 Merge pull request #9271 from ethereum/sloadKnowledge
[Yul Optimizer] Make DataFlowAnalyzer aware of storage / memory slot after sload / mload
2020-07-01 13:46:10 +02:00
chriseth e0b1d8b9bd Make DataFlowAnalyzer aware of storage / memory slot after sload / mload. 2020-07-01 13:45:25 +02:00
Bhargava Shastry 1a0391bceb Fuzzer: Add a specialized StackTooDeepError Exception that is caught in the fuzzing harness 2020-07-01 11:08:20 +02:00