Commit Graph

16690 Commits

Author SHA1 Message Date
Kamil Śliwak
4788fdad0b Merge branch 'optimiser-suite-run-sequence-for-abbreviations' into develop 2020-04-17 15:39:20 +02:00
Kamil Śliwak
c7947c1af6 Implement lazy function generation using function generation queue 2020-04-17 13:28:07 +02:00
Kamil Śliwak
1f28f79ae6 IRGenerator::generate(): Remove duplicate call to setMostDerivedContract()
- The same call happens in resetContext(_contract) called immediately before
2020-04-17 13:28:07 +02:00
chriseth
ccc06c49af
Merge pull request #8681 from ethereum/fun_fun_functions
Add functional map and fold generic functions
2020-04-17 12:19:35 +02:00
chriseth
19e68dc2a8
Merge pull request #8687 from ethereum/optimiser-command-line-help-cleanup
Optimiser command line help cleanup
2020-04-17 12:18:04 +02:00
Leonardo Alt
45f22e3ff4 Add functional map and fold generic functions 2020-04-16 19:21:36 +02:00
Alexander Arlt
3754a86ab2 Add support for interfaceID. 2020-04-16 12:17:40 -05:00
Kamil Śliwak
56af85ef39 command-line help: Minor whitespace and text tweaks 2020-04-16 18:20:28 +02:00
Kamil Śliwak
004be1788f command-line help: Move optimizer options to a separate section 2020-04-16 18:12:53 +02:00
Kamil Śliwak
1e38985fef command-line help: Clarify that --optimize-yul no longer does anything 2020-04-16 18:10:18 +02:00
Daniel Kirchner
150497c12a Stricter bounds for memory arrays. 2020-04-16 17:51:18 +02:00
Daniel Kirchner
f6d1cee06b Ensure that public callable parameters are valid for calldata. 2020-04-16 17:23:20 +02:00
Daniel Kirchner
6093982606 Review suggestions. 2020-04-16 16:42:12 +02:00
Daniel Kirchner
3a5a4c6505 Another ICE test. 2020-04-16 16:42:12 +02:00
Daniel Kirchner
6f06154eb5 Move direct struct recursion check to detect recursion in global structs. 2020-04-16 16:42:12 +02:00
Daniel Kirchner
b744a56801 Refactoring of errors and fixes for various ICEs. 2020-04-16 16:42:12 +02:00
Daniel Kirchner
df1809f8da Annotate struct definitions with a recursive flag. 2020-04-16 16:42:12 +02:00
Kamil Śliwak
9db7d2bde9 OptimiserSuite: Replace full step names in run() with abbreviations 2020-04-16 16:09:15 +02:00
Kamil Śliwak
9d7df5db69 OptimiserSuite: Add a variant of runSequence() that works with a string of abbreviations 2020-04-16 16:09:15 +02:00
Kamil Śliwak
1b4e06605d OptimiserSuite: Extract the code for repeating a sequence into runSequenceUntilStable()
- Define a constant for the maximum number of repeats of the optimisation string
2020-04-16 15:23:38 +02:00
chriseth
f271dfa2e2 Yul codegen for .selector. 2020-04-16 13:42:58 +02:00
Leonardo
0f7a5e8062
Merge pull request #8679 from ethereum/bitOpsForYul
[Sol->Yul] Implement bit operations.
2020-04-16 09:08:19 +02:00
chriseth
06adbc2c59 Implement bit operations. 2020-04-16 00:33:45 +02:00
Leonardo Alt
bca43586c6 [SMTChecker] Remove redundant CHC constraints 2020-04-15 18:11:39 +02:00
Daniel Kirchner
10879bcae6
Merge pull request #8675 from ethereum/disallowOverrideVirtualConstructor
Disallow virtual and override for constructors.
2020-04-15 16:04:24 +02:00
Leonardo
4fbe39b5e6
Merge pull request #8649 from ethereum/tryRight
Fix error reporting on diff.
2020-04-15 15:27:35 +02:00
Daniel Kirchner
b86c927505 Disallow virtual and override for constructors. 2020-04-15 13:58:37 +02:00
Daniel Kirchner
95349b3634
Merge pull request #8672 from ethereum/fixYulEmptyTupleAssign
Fix tuple assignments for empty tuples in Yul IR.
2020-04-15 12:36:46 +02:00
chriseth
aff1e93caa
Merge pull request #8571 from aarlt/clang-tidy-apply-modernize-pass-by-value
clang-tidy: Apply modernize-pass-by-value.
2020-04-15 12:06:25 +02:00
chriseth
703b6efb55
Merge pull request #8515 from imapp-pl/yul-phaser-classic-genetic-algorithm
[yul-phaser] Classic genetic algorithm
2020-04-15 12:01:51 +02:00
chriseth
cf2bd41837
Merge pull request #8554 from aarlt/yul_coverage_script
Add script to determine percentage of tests compilable via Yul.
2020-04-15 11:58:57 +02:00
Daniel Kirchner
0c5c93f3c2 Fix tuple assignments for empty tuples in Yul IR. 2020-04-15 11:10:52 +02:00
Daniel Kirchner
cbd90f8d12
Merge pull request #8673 from ethereum/fixProofsCI
Use latest docker image for chk_proofs and t_ems_solcjs CI runs.
2020-04-15 11:10:23 +02:00
Daniel Kirchner
c6c2d7174d Use latest docker image for chk_proofs and t_ems_solcjs CI runs. 2020-04-15 10:12:35 +02:00
chriseth
d3aa69e8bd
Merge pull request #8652 from esaulpaugh/develop
clarify description of padding for int<M> types
2020-04-14 19:13:40 +02:00
chriseth
25b0df3dde
Merge pull request #8246 from ethereum/yul-codegen-trycatch
Sol-to-Yul codegen for try-catch statement
2020-04-14 19:08:02 +02:00
Christian Parpart
d00d3c45b1 [Sol2Yul] Implements codegen part for try/catch statements. 2020-04-14 18:42:37 +02:00
Christian Parpart
3b83365b42 [libsolidity] TryStatement: Adding AST accessors for success/structured/fail clauses. 2020-04-14 18:39:08 +02:00
Alexander Arlt
aac7a1e434 Apply modernize-pass-by-value. 2020-04-14 10:32:13 -05:00
a3d4
760ae7f584 Update evmone version to v0.4 in docs and scripts 2020-04-14 14:34:47 +02:00
chriseth
79a44b8170
Merge pull request #8631 from ethereum/typingRefactoring
Extract typing from reference resolving.
2020-04-14 13:55:56 +02:00
Daniel Kirchner
c47714f0ba Update ASTJSON tests that fail to compile. 2020-04-14 10:59:28 +02:00
Daniel Kirchner
3af43fd350 Extract typing. 2020-04-14 10:59:28 +02:00
Leonardo
accd8d7667
Merge pull request #8639 from ethereum/smt_tuple_sort
[SMTChecker] Add and use tuple sort
2020-04-14 10:01:55 +02:00
Evan Saulpaugh
1a67b86f24
clarify description of padding for int<M> types 2020-04-10 02:23:13 -05:00
Evan Saulpaugh
1ef24562a9
change positive to non-negative 2020-04-10 02:17:57 -05:00
Leonardo
333322ebf4
Merge pull request #8648 from ethereum/fix32bitfailure
Fix 32 bit build failure.
2020-04-09 20:25:07 +02:00
chriseth
6713f32532
Merge pull request #8650 from ethereum/release
Merge release back into develop.
2020-04-09 17:42:49 +02:00
chriseth
8dd02f2712 Change error reporting from left to right. 2020-04-09 17:27:50 +02:00
chriseth
f8aaa83e4e
Merge pull request #8647 from ethereum/setverto067
Set version to 0.6.7.
2020-04-09 17:02:58 +02:00