Commit Graph

17782 Commits

Author SHA1 Message Date
Kamil Śliwak
ea1c249822 [yul-phaser] Chromosome: Use more samples and higher tolerance in tests checking the distribution
- This makes them run a second longer (which might seem small but it's a 3x increase).
- Hopefully they will break less when the random seed changes.
2020-09-14 16:17:39 +02:00
Kamil Śliwak
5637bdcaec [yul-phaser] Replace mutation tests with hard-coded expectations with more robust ones that check the statistical distribution
- The old tests would easily break when adding/removing optimiser steps.
2020-09-14 16:17:39 +02:00
Kamil Śliwak
d75f0ba437 [yul-phaser] Chromosome: Make it possible to use genes that do not correspond to existing optimiser steps 2020-09-14 16:17:39 +02:00
chriseth
fb205b719e
Merge pull request #9783 from ethereum/yul-phaser-fix-slow-tests-for-classic-algorithm
[yul-phaser] Fix slow tests for classic genetic algorithm
2020-09-14 16:16:59 +02:00
Alex Beregszaszi
398aff2ffd
Merge pull request #9794 from cakesoft-omkar/develop
Update yul.rst
2020-09-14 12:07:14 +01:00
Omkar Nikhal
09e137cf69
Update yul.rst 2020-09-14 16:22:15 +05:30
Harikrishnan Mulackal
3817515015
Merge pull request #9787 from cakesoft-omkar/develop
Update control-structures.rst
2020-09-12 10:25:18 +02:00
Omkar Nikhal
55a7173e27
Update control-structures.rst 2020-09-12 12:50:36 +05:30
Leonardo
31b5102aa0
Merge pull request #9731 from ethereum/smt_import
[SMTChecker] Fix CHC encoding
2020-09-12 00:56:04 +02:00
Alex Beregszaszi
7c73d4ca51
Merge pull request #9780 from ethereum/smt-type-minmax
[SMTChecker] Support type(T).min and type(T).max
2020-09-11 23:25:52 +01:00
Alex Beregszaszi
5bba1ab360
Merge pull request #9779 from jbn/patch-1
Add missing word to examples doc explainer
2020-09-11 22:43:27 +01:00
Kamil Śliwak
47f5ee42c9 [yul-phaser] isFitter(): Switch from toString() to genes() to make chromosome comparisons a tiny bit faster
- toString() uses a stream for conversion while genes() returns a direct reference to the string, without copies in between. The speed up is very small compared to the improvement from switching to storing a string of abbreviations instead of a vector of step names inside chromosomes but there's basically no downside to this change so it's still worth it.
2020-09-11 23:09:51 +02:00
Alex Beregszaszi
961a199cf5 [SMTChecker] Support type(T).min and type(T).max 2020-09-11 21:37:51 +01:00
Kamil Śliwak
e024032a67 Revert "[yul-phaser] Temporarily disable very slow tests for the classic algorithm"
This reverts commit b23f7d8790.
2020-09-11 22:05:56 +02:00
Kamil Śliwak
952a9c6115 [yul-phaser] Chromosome: store step abbreviations instead of full names 2020-09-11 22:05:56 +02:00
Kamil Śliwak
2a707e7685 [yul-phaser] Chromosome: Add stepsToGenes() and genesToSteps() 2020-09-11 22:05:56 +02:00
Leonardo Alt
3fea11e1a9 Remove problematic test 2020-09-11 22:02:18 +02:00
John B Nelson
59533792b4 Add missing word to examples doc explainer 2020-09-11 11:14:25 -07:00
Leonardo Alt
23ee011c56 [SMTChecker] Fix imports 2020-09-11 13:34:46 +02:00
Leonardo
72f8a753a9
Merge pull request #9586 from ethereum/scoper
Assign scopes as a separate step.
2020-09-11 10:45:54 +02:00
chriseth
61d2a18422
Merge pull request #9774 from ethereum/smt_remove_test
Adjust problematic SMTChecker tests
2020-09-11 10:32:11 +02:00
Leonardo Alt
84c707cd2a Adjust problematic SMTChecker tests 2020-09-10 19:32:17 +02:00
chriseth
0db79dbc29
Merge pull request #9591 from ethereum/nameSimplifier
Yul name simplifier.
2020-09-10 16:46:27 +02:00
chriseth
6101bdf7e2 Name simplifier. 2020-09-10 16:23:29 +02:00
Leonardo
95a284e526
Merge pull request #9739 from ethereum/smt_shifts
[SMTChecker] Support shifts
2020-09-09 21:19:43 +02:00
Leonardo Alt
40197df104 [SMTChecker] Support shifts 2020-09-09 19:47:52 +02:00
chriseth
9ced804236
Merge pull request #9771 from ethereum/refactorInterface
Introduce bitvector sort.
2020-09-09 18:46:22 +02:00
chriseth
a2cac93cbf Introduce bitvector sort. 2020-09-09 17:26:52 +02:00
chriseth
c966971fd3
Merge pull request #9770 from ethereum/smt_dot
[SMTChecker] Change warning message
2020-09-09 17:17:04 +02:00
chriseth
6508986077
Merge pull request #9768 from ethereum/move-event-syntax-tests-from-name-and-type-resolution
Group event-related syntax tests together
2020-09-09 16:57:30 +02:00
chriseth
dade4c1a48
Merge pull request #9766 from ethereum/fix-overload-resolution-with-named-parameters-in-arbitrary-order
Fix overload resolution with named arguments when order differs from declaration
2020-09-09 16:55:26 +02:00
Leonardo Alt
00f6b303b1 [SMTChecker] Change warning message 2020-09-09 16:14:21 +02:00
Kamil Śliwak
6f41e83b48 Move most event-related syntax tests from nameAndTypeResolution/ to events/ 2020-09-09 14:53:46 +02:00
Kamil Śliwak
5e9dd67a0a FunctionType::canTakeArguments(): Use the correct index when comparing named parameter types 2020-09-09 14:45:58 +02:00
chriseth
d089b56457
Merge pull request #9143 from ethereum/evmc-vms-evm-ewasm
Add support for ewasm evmc vm.
2020-09-09 11:13:39 +02:00
Alexander Arlt
23d9b1567e Add support for ewasm evmc vm. 2020-09-08 12:41:42 -05:00
chriseth
202332405f
Merge pull request #9760 from ethereum/sol2YulStorageArrayIndexAccessFix
[Sol->Yul] Fixing storage array index access
2020-09-08 16:33:54 +02:00
chriseth
3d5c84e19a
Merge pull request #9748 from ethereum/fix-implicit-conversion-to-super
Forbid implicit conversion from a contract to super
2020-09-08 16:22:35 +02:00
Leonardo
a02f70a6df
Merge pull request #9757 from ethereum/circleci_arch
Add t_archlinux_soltest
2020-09-08 16:17:58 +02:00
Djordje Mijovic
ec6d21cde2 [Sol->Yul] Fixing storage array index access 2020-09-08 16:02:56 +02:00
Leonardo Alt
9dacde99e6 Add t_archlinux_soltest 2020-09-08 14:54:36 +02:00
Leonardo
0b0c814b49
Merge pull request #9756 from ethereum/circleci_output_timeout
Increase Circle CI no output timeout
2020-09-08 10:14:33 +02:00
Leonardo Alt
0be8c2af5b Increase Circle CI no output timeout 2020-09-08 08:18:27 +02:00
Kamil Śliwak
41bcb97e36 Don't consider contracts implicitly convertible to the type of super
- `super` for all intents and purposes behaves like a type and should be a TypeType rather than ContractType. We have an issue to fix it but it's a breaking change. Until then let's at least not treat other contracts as convertible to the ContractType that `super` represents.
2020-09-08 00:29:44 +02:00
Kamil Śliwak
7681c7dddf Remove dead code from ContractType::isImplicitlyConvertibleTo() 2020-09-08 00:26:29 +02:00
chriseth
38e6f2723d
Merge pull request #9740 from ethereum/issue_9629
ViewPureChecker::reportMutability: don't check visibility on constructors.
2020-09-07 21:58:33 +02:00
chriseth
364626b290
Merge pull request #9754 from ethereum/fix-typo-block
Fix typo block
2020-09-07 21:36:43 +02:00
Alexander Arlt
df8bbeeb22 ViewPureChecker::reportMutability: don't check visibility on constructors. 2020-09-07 11:35:33 -05:00
Harikrishnan Mulackal
d166c2540a Fix typo block 2020-09-07 17:24:03 +02:00
chriseth
2b29f4e56d
Merge pull request #9750 from ethereum/virtual-library-modifier
Type Checker: Disallow ``virtual`` for modifiers in libraries.
2020-09-07 14:05:10 +02:00