Commit Graph
2992 Commits
Author SHA1 Message Date
Daniel Kirchner 226f8bb64d Use imported cmake targets for boost. 2019-06-06 18:49:34 +02:00
Daniel Kirchner 6368cd4c82 AsmParser: disallow trailing commas in function call arguments. 2019-06-06 13:16:27 +02:00
Leonardo Alt d9ce9cab99 [SMTChecker] Use smtlib's implies instead of \!a or b 2019-06-04 14:23:44 +02:00
Bhargava Shastry f57439035a Do not enclose string literal within double quotes before conversion to u256 2019-05-29 15:52:31 +02:00
chriseth c9e2d388b5 Merge pull request #6848 from ethereum/invertibleRelation
Implement references using InvertibleRelation as data structure.
2019-05-29 13:34:10 +02:00
chriseth 4ee703e6e5 Revert "Add Steve Johnson-style parser recovery rules:"
This reverts commit 97f8ee0d1b.
2019-05-28 18:09:24 +02:00
chriseth f9dca1f282 Merge pull request #6681 from rocky/recoveringParser1
Add Steve Johnson-style parser recovery rules:
2019-05-28 15:36:45 +02:00
rockyandchriseth 97f8ee0d1b Add Steve Johnson-style parser recovery rules:
SourceUnit = Error $
    Block = '{' Error '}'
    ContractDefinition = '{' Error '}'
    Statement = Error ';'

Co-Authored-By: chriseth <chris@ethereum.org>
2019-05-28 15:06:34 +02:00
chriseth a3f721bbcc Merge pull request #6583 from ethereum/reset_yulstringrepo
Reset YulStringRepository regularly
2019-05-28 14:20:53 +02:00
chriseth 2276b567b1 Merge pull request #6840 from ethereum/discoverMSize
Only remove msize-modifying instructions if msize is not used.
2019-05-28 13:16:55 +02:00
Bhargava Shastry dbae0fa939 Reset Yul string repository before each compilation. 2019-05-28 13:12:39 +02:00
chriseth df96648b1c Do not allow msize in inline assembly if the Yul optimizer is active. 2019-05-28 12:54:33 +02:00
chriseth d7b5ea6761 Allow msize optimization only if it is not present. 2019-05-28 12:54:32 +02:00
chriseth c3cdae908d Merge pull request #6767 from ethereum/constantOptimiserForYul
[Yul] Constant optimiser
2019-05-28 11:53:04 +02:00
chriseth b95eebee1c Merge pull request #6822 from ethereum/uninitializedLoadFromStorage
Explicitly turn uninitialized internal function pointers into invalid function when loaded from storage.
2019-05-28 11:48:56 +02:00
chriseth 01b6b680f1 Merge pull request #6829 from ethereum/solYulDivision
[SolYul] Division.
2019-05-28 11:48:20 +02:00
chriseth cee1340113 Add mini-interpreter to check representation. 2019-05-28 11:35:07 +02:00
chriseth 1c16124a09 Constant optimiser for Yul. 2019-05-28 11:35:07 +02:00
chriseth 4061ad0a7b Implement references using InvertibleRelation as data structure. 2019-05-27 22:55:59 +02:00
chriseth 7183940e24 Merge pull request #6770 from ethereum/isoltest-parser-fix
[isoltest] TestFileParser: Fixes access of iterator at and beyond iterator ends
2019-05-27 19:14:35 +02:00
chriseth fbf189151d [SolYul] Division. 2019-05-27 17:53:46 +02:00
chriseth 5b1a984882 Explicitly turn uninitialized internal function pointers into invalid function when loaded from storage. 2019-05-27 17:26:37 +02:00
chriseth a600126703 Merge pull request #6833 from sifmelcara/fix-struct-array-mapping
Fix assignment of struct containing array of mappings
2019-05-27 11:14:28 +02:00
mingchuan bf8af89bba Fix assignment of struct containing array of mappings 2019-05-25 01:33:49 +08:00
chriseth 73d0eb6b7a Modify test to prevent underflow. 2019-05-23 21:32:30 +02:00
chriseth ee7548a339 Activate some tests. 2019-05-23 21:32:30 +02:00
chriseth 195a7ff61a Merge pull request #6814 from ethereum/yul-delete-operation
[Sol -> Yul] Implement delete for function pointers
2019-05-23 16:27:14 +02:00
Mathias Baumann 981983089c [Sol -> Yul] Implement delete for function pointers 2019-05-23 15:51:59 +02:00
chriseth 6132f0aea9 Merge pull request #6800 from ethereum/skipEmptyDump
Skip empty entries in memory and storage dump.
2019-05-23 14:27:44 +02:00
chriseth 3c548a1d76 Update tests. 2019-05-23 13:17:27 +02:00
Mathias Baumann 81702717b0 [Sol -> Yul] Enable function pointer comparison 2019-05-23 12:52:50 +02:00
chriseth e5902c58a4 Merge pull request #6777 from sifmelcara/loop-cond-rewriter
[YulOpt] Implement ForLoopConditionIntoBody
2019-05-23 12:51:51 +02:00
chriseth 14545852d1 Make YulInterpreterTest EVM version aware. 2019-05-23 12:42:11 +02:00
chriseth 1ca3edf6a1 Remove side-effect-free instructions from the trace. 2019-05-23 12:42:11 +02:00
chriseth 3ef03258ec Remove memory logging. 2019-05-23 12:42:11 +02:00
chriseth 0291abf10f Merge pull request #6818 from ethereum/alwaysUseBuiltins
Provide builtin functions even in loose assembly mode.
2019-05-23 12:29:12 +02:00
chriseth 91312e657b Skip empty entries in memory and storage dump. 2019-05-23 12:27:56 +02:00
chriseth d707a26a90 Merge pull request #6809 from ethereum/refactor-ossfuzz-build
[ossfuzz] Refactor build system so that ossfuzz harnesses can be built locally
2019-05-23 12:26:44 +02:00
chriseth 7cf51876e2 Merge pull request #6812 from ethereum/asmCallvalue
Do not require payable for callvalue instruction.
2019-05-23 12:07:06 +02:00
chriseth 90e8594858 Update tests. 2019-05-23 11:30:12 +02:00
chriseth 9a00729ce7 Provide dialect to Parser and InlineAssembly AST nodes. 2019-05-23 00:24:58 +02:00
chriseth 1e3878121a Do not inline recursive functions. 2019-05-22 18:15:21 +02:00
mingchuan 4ab377eb00 Add tests for ForLoopConditionIntoBody 2019-05-22 21:51:03 +08:00
chriseth 7506b5752a Do not require payable for callvalue instruction. 2019-05-22 11:30:29 +02:00
Bhargava Shastry 804368bb51 First commit 2019-05-22 10:15:28 +02:00
Mathias Baumann cbf81b123a Fix new found spelling mistakes and add exceptions 2019-05-21 10:59:34 +02:00
chriseth e324deabd6 Merge pull request #6740 from ethereum/unary-ops
[Sol -> Yul] Implement Int/Bool Unary: ++, --, ~, !
2019-05-20 18:06:01 +02:00
chriseth af2bdfd2fa Merge pull request #6793 from ethereum/irCheckedMul
[Sol - Yul] Implement checked multiplication.
2019-05-20 17:54:57 +02:00
Daniel Kirchner b6f4d4e9bc [Sol - Yul] Implement checked multiplication. 2019-05-20 17:36:53 +02:00
chriseth 1dc15d5864 Modify parser and optimizer. 2019-05-20 17:32:56 +02:00