Commit Graph

176 Commits

Author SHA1 Message Date
chriseth
c8b9d24eba
Merge pull request #9106 from ethereum/develop
Merge develop into breaking.
2020-06-03 13:51:28 +02:00
Djordje Mijovic
4b6c322279 Fixing various signedness warnings 2020-06-03 10:37:18 +02:00
chriseth
894478ff8c
Merge pull request #9038 from ethereum/develop
Merge develop into breaking.
2020-05-27 15:24:27 +02:00
chriseth
9604174151 Rename asCallableFunction. 2020-05-26 11:35:12 +02:00
chriseth
74b9b094c0 Merge remote-tracking branch 'origin/develop' into HEAD 2020-05-20 17:22:47 +02:00
Kamil Śliwak
1fa689e951 [yul-phaser] ProgramCache::calculateTotalCachedCodeSize(): Replace default weights with ones that better correlate with memory usage 2020-05-20 16:47:23 +02:00
Kamil Śliwak
bff012c76d [yul-phaser] Change default metric weights so that everything has a cost
- The CodeSize::DefaultWeights gives zeros to instructions that it assumes will be optimised out. Obviously, we cannot make this assumption here since phaser is meant to find the best way for the optimiser to work.
2020-05-20 16:47:23 +02:00
Kamil Śliwak
b776021870 [yul-phaser] Command-line options for altering weights used by CodeSize metric 2020-05-20 16:47:23 +02:00
Kamil Śliwak
40dfac7683 [yul-phaser] Require specifying weights for Program::codeSize() 2020-05-20 16:47:23 +02:00
hrkrshnn
4a001d568e Removed null members from JSON output 2020-05-20 16:56:33 +05:30
chriseth
0be56a0abf Merge remote-tracking branch 'origin/develop' into breaking 2020-05-12 17:48:53 +02:00
chriseth
3312150d7f
Merge pull request #8878 from ethereum/selecting-yul-optimisation-steps-in-strict-assembly-mode
Selecting Yul optimisation steps in strict assembly mode
2020-05-11 16:05:57 +02:00
Alex Beregszaszi
c31a93b3f2 Remove boost::filesystem where it is not needed
A two uses in CommonIO remain for the compiler (plus testing/tools use it extensively)
2020-05-11 11:19:11 +01:00
Alex Beregszaszi
338e55be10 Add header guard to two files 2020-05-11 10:44:20 +01:00
Kamil Śliwak
e8aec6de54 More information about --yul-optimizations option in READMEs and docs 2020-05-08 22:29:57 +02:00
Kamil Śliwak
5d4b9022f0 yul-phaser README: --no-optimize-yul options is not really necessary 2020-05-08 22:05:04 +02:00
Harikrishnan Mulackal
92cf61d4f9 fixed compilation tests and upgraded ext. tests branch 2020-05-05 21:11:15 +05:30
Harikrishnan Mulackal
aed6c22318 solidity-upgrade can now change now to block.timestamp 2020-05-05 21:11:15 +05:30
chriseth
e306fdc251
Merge pull request #8741 from ethereum/dot-syntax-upgrade
[BREAKING] solidity-upgrade dot syntax for gas and value
2020-04-28 18:29:49 +02:00
hrkrshnn
644ae320a4 Fixed infinite loops 2020-04-27 17:37:18 +05:30
Kamil Śliwak
ee915008bd [yul-phaser] README 2020-04-24 17:31:50 +02:00
Kamil Śliwak
163e35dd23 [yul-phaser] Tweak default values according to experiment results
- Long chromosomes in the intial population are better. Set minimum and maximum to 100.
- The classic algorithm does not work well without elite. 50% performed better but I think it might be too large. Let's set it to 25%.
- Switch to uniform crossover since this is what was used in most experiments and performed well.
2020-04-24 17:31:50 +02:00
Kamil Śliwak
35395a4b9c [yul-phaser] Phaser: Missing word in --metric-aggregator option description 2020-04-24 17:31:50 +02:00
Kamil Śliwak
424edecd21 [yul-phaser] Phaser: List all available values of enum options in --help 2020-04-24 17:31:50 +02:00
Kamil Śliwak
e19d8d1fa3 [yul-phaser] GeneticAlgorithm::runNextRound(): Fix outdated docstring 2020-04-24 17:31:50 +02:00
hrkrshnn
eb4cff56f7 Upgrade dot syntax for gas and value 2020-04-24 16:22:07 +05:30
hrkrshnn
e2e32d372f virtual modifiers (in Abstract contracts) allow empty bodies 2020-04-23 17:26:59 +05:30
Kamil Śliwak
c2effd4e98 [yul-phaser] Mutations: Minor style tweak, missing space in the ternary operator 2020-04-20 15:30:10 +02:00
Kamil Śliwak
d9e2735361 [yul-phaser] Add options for selecting crossover operator used by the algorithms 2020-04-20 15:30:10 +02:00
Kamil Śliwak
ad89b477c8 [yul-phaser] GeneticAlgorithms: Add methods for selecting a crossover operator 2020-04-20 15:30:10 +02:00
Kamil Śliwak
1ada2a52fb [yul-phaser] Mutations: Add two-point and uniform crossover operators 2020-04-20 15:30:10 +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
Alexander Arlt
aac7a1e434 Apply modernize-pass-by-value. 2020-04-14 10:32:13 -05:00
chriseth
823a119117
Merge pull request #8570 from aarlt/clang-tidy-apply-modernize-use-emplace
clang-tidy: Apply modernize-use-emplace.
2020-04-07 17:28:50 +02:00
Kamil Śliwak
0efea99fa5 [yul-phaser] Phaser: Allow selecting the classic algorithm on the command line 2020-04-06 19:06:08 +02:00
Kamil Śliwak
f6783c60b2 [yul-phaser] GeneticAlgorithms: Add ClassicGeneticAlgorithm 2020-04-06 19:06:08 +02:00
Kamil Śliwak
879f6e17e9 [yul-phaser] GenerationalElitistWithExclusivePools: Refactor runNextRound() for less nesting and more readability 2020-04-06 19:06:08 +02:00
Kamil Śliwak
8c86a4983d [yul-phaser] Population: Add combine() 2020-04-06 19:06:08 +02:00
Kamil Śliwak
ef8d0888af [yul-phaser] Population: Add symmetricCrossoverWithRemainder() 2020-04-06 19:06:08 +02:00
Kamil Śliwak
59011fcde6 [yul-phaser] Mutations: Add mutationSequence() 2020-04-06 19:06:08 +02:00
Kamil Śliwak
0837a62d5c [yul-phaser] Mutations: Add symmetricRandomPointCrossover() 2020-04-06 19:06:08 +02:00
Kamil Śliwak
b6f8ecf755 [yul-phaser] Selections+PairSelections: Add RandomSubset and PairsFromRandomSubset 2020-04-06 19:06:08 +02:00
Kamil Śliwak
7381068dcc [yul-phaser] Make the Population constructor that takes individuals public and use it to speed up some operations 2020-04-06 19:06:08 +02:00
Alexander Arlt
cae6e7769f Apply modernize-use-override. 2020-04-02 18:00:44 -05:00
Alexander Arlt
90bb1d8a7c Apply modernize-use-emplace. 2020-04-02 17:35:48 -05:00
Alexander Arlt
616fd8df1e Apply modernize-use-nullptr. 2020-04-01 12:46:19 -05:00
chriseth
ff35bf69de
Merge pull request #8539 from random-internet-cat/population-op-plus
Convert operator+(Population, Population) into a hidden friend
2020-03-30 16:22:57 +02:00
Jason Cobb
c184844932
Remove forward declaration of class Population 2020-03-26 18:57:43 -04:00
Jason Cobb
e16c0c4133
Convert operator+(Population, Population) into a hidden friend 2020-03-25 23:54:30 -04:00