Daniel Kirchner
|
3d26d47d46
|
Merge pull request #11525 from ethereum/yulControlFlowGraph
Yul control flow graph (OptimizedEVMCodeTransform Step 1)
|
2021-07-15 16:03:39 +02:00 |
|
Daniel Kirchner
|
f3707f2ab0
|
Control flow graph for Yul.
|
2021-07-15 15:24:12 +02:00 |
|
Daniel Kirchner
|
0a6fc89da2
|
Fix negation function name collision.
|
2021-07-08 10:47:29 +02:00 |
|
Daniel Kirchner
|
c341445f8e
|
Maintain disambiguation when generating new functions in StackToMemoryMover.
|
2021-06-28 18:11:57 +02:00 |
|
Daniel Kirchner
|
17d69e2b99
|
Changelog entries.
|
2021-06-28 18:11:57 +02:00 |
|
Daniel Kirchner
|
bc288aacf5
|
Have the stack optimization in the code transform only reuse slots that are reachable and fix argument slot reuse on functions without return variables.
|
2021-06-28 18:11:57 +02:00 |
|
Daniel Kirchner
|
dfce7b667d
|
Move function arguments and return values.
|
2021-06-28 18:11:57 +02:00 |
|
Daniel Kirchner
|
cc0169ad68
|
Function definition collector.
|
2021-06-28 18:11:57 +02:00 |
|
Daniel Kirchner
|
98e7b61a37
|
Merge pull request #11510 from ethereum/removeNondeterministicTest
Remove potentially non-deterministic test case.
|
2021-06-09 15:42:08 +02:00 |
|
Daniel Kirchner
|
284e8a103f
|
Remove potentially non-deterministic test case.
|
2021-06-09 14:42:16 +02:00 |
|
Daniel Kirchner
|
1638b21072
|
Merge pull request #11485 from ethereum/changelogForMod
Changelog entry for modifier fix.
|
2021-06-03 23:25:56 +02:00 |
|
Daniel Kirchner
|
9be57546db
|
Merge pull request #11470 from ethereum/cacheVirtualLookup
Cache functions by name.
|
2021-06-03 11:51:08 +02:00 |
|
Daniel Kirchner
|
324caef53c
|
Merge pull request #11286 from ethereum/evmc8
Upgrade to EVMC 8.0.0 + evmone 0.7.0
|
2021-05-13 18:32:01 +02:00 |
|
Daniel Kirchner
|
3494476abd
|
Merge pull request #11372 from ethereum/evmc8DockerImages
Update evmone and boost download links in docker images.
|
2021-05-13 18:31:52 +02:00 |
|
Daniel Kirchner
|
7073198adb
|
Update docker image hashes in CircleCI config.
|
2021-05-12 16:56:23 +02:00 |
|
Daniel Kirchner
|
98e2b4e5ed
|
Merge pull request #11374 from ethereum/semanticTestVMLoadingAndFailures
Change loading of VMs and error messages during test.
|
2021-05-12 16:47:16 +02:00 |
|
Daniel Kirchner
|
06a9199967
|
Change loading of VMs and error messages during test.
|
2021-05-12 14:48:37 +02:00 |
|
Daniel Kirchner
|
c7f321c12d
|
Update evmone and boost download links in docker images.
|
2021-05-10 13:25:39 +02:00 |
|
Daniel Kirchner
|
5e8abec3e9
|
Merge pull request #11370 from ethereum/fixWindowsBuilds
Change windows boost binary download URL.
|
2021-05-10 12:20:40 +02:00 |
|
Daniel Kirchner
|
452c17c15e
|
Change windows boost binary download URL.
|
2021-05-10 11:30:11 +02:00 |
|
Daniel Kirchner
|
5d070c5bc2
|
Merge pull request #11357 from ethereum/rangesImport
Remove more imports of ranges namespace.
|
2021-05-07 16:21:20 +02:00 |
|
Daniel Kirchner
|
6104ac1cdf
|
Remove more imports of ranges namespace.
|
2021-05-07 15:42:17 +02:00 |
|
Daniel Kirchner
|
c69add1682
|
Remove import of ranges namespace.
|
2021-05-07 13:44:14 +02:00 |
|
Daniel Kirchner
|
f9b23ca845
|
Merge pull request #11247 from ethereum/setValueForCurrentScopeHelper
Add SetValueForCurrentScope helper.
|
2021-04-16 12:42:25 +02:00 |
|
Daniel Kirchner
|
afae46dcb5
|
Add ScopedSaveAndRestore helper.
|
2021-04-16 10:56:56 +02:00 |
|
Daniel Kirchner
|
cb85285ac6
|
Merge pull request #11258 from ethereum/less-verbose-bytecode-comparison-output-in-ci
Less verbose bytecode comparison output in CI
|
2021-04-16 10:22:51 +02:00 |
|
Daniel Kirchner
|
5bebbca273
|
Extract VariableReferenceCounter and StackTooDeep error from EVMCodeTransform.
|
2021-04-13 10:41:16 +02:00 |
|
Daniel Kirchner
|
6fdfd8b62b
|
Fix import path grammar and grammar testing details.
|
2021-04-12 14:54:36 +02:00 |
|
Daniel Kirchner
|
96c8123b6b
|
Use unbounded allocation before returning.
|
2021-04-08 18:37:24 +02:00 |
|
Daniel Kirchner
|
6fc4b04d1d
|
Update test expectations.
|
2021-04-06 13:41:26 +02:00 |
|
Daniel Kirchner
|
35c2eeab68
|
Restrict to only popping, but not reusing argument slots, as well as only freeing up until the return slots are allocated.
|
2021-04-06 13:38:06 +02:00 |
|
Daniel Kirchner
|
4b0f8383a6
|
Reuse function argument slots and defer allocation of return variable slots in EVMCodeTransform.
|
2021-04-06 13:38:05 +02:00 |
|
Daniel Kirchner
|
04a051d380
|
Add test cases for return slot allocation.
|
2021-04-06 13:31:22 +02:00 |
|
Daniel Kirchner
|
8b3095920a
|
Inline ordinary jumps to small blocks and jumps to terminating control flow.
|
2021-03-24 13:50:24 +01:00 |
|
Daniel Kirchner
|
7170c8ac60
|
Merge pull request #11109 from ethereum/inlinerHeuristicsFix
Fix small bug in inliner heuristics.
|
2021-03-16 14:09:26 +01:00 |
|
Daniel Kirchner
|
d5281877cc
|
Fix inliner heuristics.
|
2021-03-15 20:31:56 +01:00 |
|
Daniel Kirchner
|
8f56c6ad5c
|
Add missing header to Algorithms.h.
|
2021-03-15 13:50:24 +01:00 |
|
Daniel Kirchner
|
1265b39904
|
Merge pull request #11095 from ethereum/fixGcc8
Fix compilation error with GCC 8.
|
2021-03-12 13:25:25 +01:00 |
|
Daniel Kirchner
|
6d19a25705
|
Fix compilation error with GCC 8.
|
2021-03-12 12:28:18 +01:00 |
|
Daniel Kirchner
|
a75424eec4
|
Drop support for evm15 and eip-615.
|
2021-03-09 15:56:03 +01:00 |
|
Daniel Kirchner
|
e99da7e015
|
Extract StackReuseCodegen tests.
|
2021-03-09 15:47:24 +01:00 |
|
Daniel Kirchner
|
acd3084076
|
Fuzzer for stack optimiser/code generator.
|
2021-03-04 17:35:56 +01:00 |
|
Daniel Kirchner
|
5a59fde073
|
Documentation of the inliner in the old optimizer.
|
2021-02-10 09:14:05 +01:00 |
|
Daniel Kirchner
|
cb74a45fd6
|
Add inlining for old optimizer.
|
2021-02-09 19:08:58 +01:00 |
|
Daniel Kirchner
|
8a414d3fab
|
Merge pull request #10838 from ethereum/solc-bin-bytecode-comparison-pr-check-scripts
Bytecode comparison PR scripts for solc-bin
|
2021-02-04 11:40:56 +01:00 |
|
Daniel Kirchner
|
5faefdea65
|
Merge pull request #10893 from ethereum/string2BytesSol2Yul
[Sol->Yul] Fixing string calldata to bytes calldata conversion.
|
2021-02-04 10:33:40 +01:00 |
|
Daniel Kirchner
|
9bf88d5459
|
Merge pull request #10791 from ethereum/committer-date-in-prerelease-txt-on-windows
Use committer date in CI build version strings on Windows
|
2021-01-15 20:12:04 +01:00 |
|
Daniel Kirchner
|
cee8ae75c8
|
Set default build type, if none was specified.
|
2021-01-14 10:22:50 +01:00 |
|
Daniel Kirchner
|
f34d7120a2
|
Add and use mapTuple helper.
|
2021-01-13 17:23:27 +01:00 |
|
Daniel Kirchner
|
b5bb802a93
|
Fix undefined behaviour on 32-bit platforms in swarm hash.
|
2021-01-13 15:52:58 +01:00 |
|
Daniel Kirchner
|
91cdb606a5
|
Some style review suggestions.
|
2021-01-13 12:43:38 +01:00 |
|
Daniel Kirchner
|
804bd8f6dd
|
Switch to new emscripten docker image.
|
2021-01-13 02:22:09 +01:00 |
|
Daniel Kirchner
|
10c742ed0a
|
Update emscripten build to be compatible with new docker image.
|
2021-01-13 01:09:34 +01:00 |
|
Daniel Kirchner
|
d0c8c79888
|
Update emscripten docker image to be based on emscripten 2.0.12 and boost 1.75.0.
|
2021-01-13 00:33:03 +01:00 |
|
Daniel Kirchner
|
4505889481
|
Replace ranges::all_of wrapper by range-v3.
|
2021-01-12 21:44:42 +01:00 |
|
Daniel Kirchner
|
75bed10be5
|
Check for scopes in LoadResolver.
|
2021-01-12 21:41:51 +01:00 |
|
Daniel Kirchner
|
eb035147d2
|
Rephrase erasure condition in DataFlowAnalyzer.
|
2021-01-12 21:40:52 +01:00 |
|
Daniel Kirchner
|
3ed55613ba
|
Add and use cxx20::ranges::all_of.
|
2021-01-12 21:40:52 +01:00 |
|
Daniel Kirchner
|
970e8064bb
|
Clear variables, but not backreferences in popScope.
|
2021-01-12 21:40:52 +01:00 |
|
Daniel Kirchner
|
7fe03cbab0
|
Implement cxx20 polyfill and replace InvertibleMap entirely.
|
2021-01-12 21:40:40 +01:00 |
|
Daniel Kirchner
|
625d402dbb
|
Various optimizations for the DataFlowAnalyzer.
|
2021-01-12 21:39:20 +01:00 |
|
Daniel Kirchner
|
162b1508da
|
Merge pull request #10744 from ethereum/useDropEx
Use drop_exactly.
|
2021-01-12 17:11:54 +01:00 |
|
Daniel Kirchner
|
f5adaa8bbb
|
Add valueOrNullptr and valueOrDefault utilities.
|
2021-01-12 13:13:03 +01:00 |
|
Daniel Kirchner
|
eac2bcf72f
|
Add range-v3.
|
2021-01-11 18:44:55 +01:00 |
|
Daniel Kirchner
|
308549f950
|
Simplify test and add Changelog entry.
|
2021-01-06 11:33:08 +01:00 |
|
Daniel Kirchner
|
0a923f02f6
|
Allow /build to be a symlink in .gitignore.
|
2021-01-06 10:34:18 +01:00 |
|
Daniel Kirchner
|
bac07612bf
|
Extend .gitignore to all CLion build directory names.
|
2021-01-06 10:29:32 +01:00 |
|
Daniel Kirchner
|
1afdfc2c84
|
Build solidity-upgrade and yul-phaser statically on static PPA builds.
|
2020-12-17 16:09:23 +01:00 |
|
Daniel Kirchner
|
dc5f7a7405
|
Merge pull request #10448 from ethereum/fixedhash
Add comprehensive tests for FixedHash
|
2020-12-11 15:31:20 +01:00 |
|
Daniel Kirchner
|
8db2cad45c
|
Merge pull request #10555 from ethereum/address-code
[BREAKING] Introduce address(...).code
|
2020-12-11 12:34:20 +01:00 |
|
Daniel Kirchner
|
90c693be09
|
Merge pull request #10568 from ethereum/oldClangFixes
Deal with old clang compilers.
|
2020-12-10 20:03:51 +01:00 |
|
Daniel Kirchner
|
4cb9a42d9a
|
Verify minimal clang version in cmake.
|
2020-12-10 17:40:29 +01:00 |
|
Daniel Kirchner
|
c400c61fc3
|
Fix incorrect behaviour on clang 6.
|
2020-12-10 17:20:30 +01:00 |
|
Daniel Kirchner
|
7308abc084
|
Allow loading Z3 dynamically at runtime.
|
2020-12-10 16:47:47 +01:00 |
|
Daniel Kirchner
|
2e31a6bdbf
|
Switch CI runs from EOL'ed eoan to focal.
|
2020-12-10 11:09:55 +01:00 |
|
Daniel Kirchner
|
588535566f
|
Mark chainid as view.
|
2020-12-09 16:55:51 +01:00 |
|
Daniel Kirchner
|
e691b7402a
|
Move standard-json "modelCheckerSettings" key to "settings.modelChecker".
|
2020-12-09 15:53:32 +01:00 |
|
Daniel Kirchner
|
4368a3b3eb
|
Merge pull request #10462 from ethereum/scanner-old-escapes
[BREAKING] Remove the \b, \f, \v escape sequences from the Scanner
|
2020-12-07 23:40:21 +01:00 |
|
Daniel Kirchner
|
2e6693c849
|
Update version checks in cmake to match debian stable and remove some workarounds.
|
2020-12-07 18:26:51 +01:00 |
|
Daniel Kirchner
|
1b88a8c845
|
Update compiler version requirements in the docs.
|
2020-12-07 18:26:51 +01:00 |
|
Daniel Kirchner
|
a3a5d93b34
|
Drop direct support for Ubuntu 18.04 and switch to static PPA releases for it.
|
2020-12-07 18:18:41 +01:00 |
|
Daniel Kirchner
|
6c70208d5f
|
Merge pull request #10359 from ethereum/extra-semi
Enable the -Wextra-semi warning
|
2020-12-07 14:35:30 +01:00 |
|
Daniel Kirchner
|
c996d74041
|
Merge pull request #10503 from ethereum/irBreakingChangesMinorFix
Rephrase detail in ir breaking changes docs.
|
2020-12-07 12:35:41 +01:00 |
|
Daniel Kirchner
|
804e98a136
|
Rephrase.
|
2020-12-07 11:29:09 +01:00 |
|
Daniel Kirchner
|
c39a5e2b7a
|
Fix accidental repetition in ir breaking changes docs.
|
2020-12-07 11:24:13 +01:00 |
|
Daniel Kirchner
|
f456d939af
|
Merge pull request #10501 from ethereum/bytecode-comparison-on-nodejs-14
Upgrade bytecode comparison container to node.js 14
|
2020-12-07 10:40:04 +01:00 |
|
Daniel Kirchner
|
06bca65222
|
Merge pull request #10321 from ethereum/reimplementConstantEvaluator
Reimplement constant evaluator.
|
2020-12-04 16:31:31 +01:00 |
|
Daniel Kirchner
|
cb72d76aaf
|
Add const ref to prevent segfaults.
|
2020-12-04 14:57:46 +01:00 |
|
Daniel Kirchner
|
96a50b52e2
|
Add storage load/store functions to Yul dialect.
|
2020-12-03 19:10:05 +01:00 |
|
Daniel Kirchner
|
6aae7caec8
|
Merge pull request #10051 from ethereum/contractArrayTypeStatement
Allow arrays of contract types as type expressions e.g. for abi.decode.
|
2020-10-18 15:32:57 +02:00 |
|
Daniel Kirchner
|
79d9a1ca81
|
Tests for abi.encode.
|
2020-10-16 20:24:43 +02:00 |
|
Daniel Kirchner
|
e06d4303fb
|
Semantic tests.
|
2020-10-16 19:40:41 +02:00 |
|
Daniel Kirchner
|
909ce9164a
|
Allow arrays of contract types as type expressions e.g. for abi.decode.
|
2020-10-16 19:40:41 +02:00 |
|
Daniel Kirchner
|
db4dd51739
|
Merge pull request #10055 from ethereum/userDefinedLibraryTypes
Disallow invalid use of library names as type names.
|
2020-10-16 18:55:42 +02:00 |
|
Daniel Kirchner
|
3f14c904b0
|
Disallow invalid use of library names as type names.
|
2020-10-16 18:25:08 +02:00 |
|
Daniel Kirchner
|
23314fc96c
|
Merge pull request #10054 from ethereum/windowsBuilds
Fix windows builds.
|
2020-10-16 12:33:20 +02:00 |
|
Daniel Kirchner
|
8e42015dd3
|
Fix windows builds.
|
2020-10-16 11:48:50 +02:00 |
|
Daniel Kirchner
|
9aafb62e52
|
Merge pull request #10050 from ethereum/circleWinTestResults
Store test results on CircleCI's t_win for proper reporting.
|
2020-10-15 20:40:37 +02:00 |
|
Daniel Kirchner
|
e91baeef37
|
Store test results on CircleCI's t_win for proper reporting.
|
2020-10-15 19:11:17 +02:00 |
|
Daniel Kirchner
|
41000fea31
|
Merge pull request #10031 from ethereum/setImmutableArgument
Add another argument to setimmutable and the AssignImmutable opcode, allowing to modify code at any memory offset.
|
2020-10-15 18:37:21 +02:00 |
|