Commit Graph
15907 Commits
Author SHA1 Message Date
Djordje Mijovic 2efda4129b Adding test for multi return values including bool in evmTyped dialect. Calling zeroLiteralForType from inliner 2020-02-24 15:05:19 +01:00
chriseth bddbcbe6a4 Use bool type in word size transform. 2020-02-24 15:05:19 +01:00
chriseth 6b272faec0 Some wasm related type fixes. 2020-02-24 15:05:19 +01:00
chriseth a52305d3bd Use bool type in conditional simplifier and for loop condition into body. 2020-02-24 15:05:19 +01:00
Djordje Mijovic a52c9af5b9 Adding vardecl optimization for boolean types 2020-02-24 15:05:19 +01:00
chriseth e75cace78d Properly assign types in control flow simplifier. 2020-02-24 15:05:19 +01:00
chriseth e728cd76b6 Introduce typed named functions to dialect. 2020-02-24 15:05:19 +01:00
chriseth b9b36cd89e Properly assign types in ExpressionSplitter. 2020-02-24 15:05:19 +01:00
chriseth 915cb65106 Collect types together with names. 2020-02-24 15:05:19 +01:00
chriseth 2ee748b7f5 Add tests 2020-02-24 15:05:19 +01:00
chriseth 9140bc52c4 Tests for invalid types. 2020-02-24 15:05:18 +01:00
chriseth 6eec968365 Test updates. 2020-02-24 15:05:18 +01:00
chriseth 1f51716227 Type checking for Yul. 2020-02-24 15:05:18 +01:00
chriseth aa6a2b4706 Merge pull request #8326 from imapp-pl/yul-phaser-fitness-metrics
[yul-phaser] Fitness metrics
2020-02-24 13:34:58 +01:00
chriseth cc55daae55 Merge pull request #8089 from ethereum/array-copy
[DOCS] Clarify array copying semantics
2020-02-20 16:15:17 +01:00
chriseth 525fe384e2 Merge pull request #8357 from ethereum/fix-8356
circleci: Use custom pipeline parameters per docker image revision in config
2020-02-20 15:48:10 +01:00
Bhargava Shastry 98fb71f03f circleci: Use custom pipeline parameters per docker image revision in config 2020-02-20 11:34:49 +05:30
Kamil Śliwak e8192e9aa3 [yul-phaser] main: Set the number of optimisation sequence repetitions to 5 2020-02-19 17:26:34 +01:00
cameel 2291cf78ac [yul-phaser] Population: Add constructors to Individual to simplify initialization 2020-02-19 17:26:34 +01:00
cameel cef01c961a [yul-phaser] Population: Keep the individuals always sorted 2020-02-19 17:26:34 +01:00
cameel 76842ac3fd [yul-phaser] Population: Evaluate fitness immediately when an individual is added or modified
- This removes the explicit evaluation phase.
- Fitness is no longer optional in Individual
2020-02-19 17:26:34 +01:00
cameel 66fdc1c374 [yul-phaser] Population: Store fitness metric rather than program directly
- In the console app use ProgramSize metric when creating the population.
2020-02-19 17:03:35 +01:00
cameel 85074e7a8a [yul-phaser] Population: Extract sorting from doSelection() into sortIndividuals() in Population class 2020-02-19 17:03:35 +01:00
cameel 41f36f421d [yul-phaser] Population: Extract conversion from chromosomes to individuals into a separate function 2020-02-19 17:03:35 +01:00
Kamil Śliwak 930a9918a6 [yul-phaser] ProgramSize: Add an option to repeat the optimisation sequence several times 2020-02-19 16:36:14 +01:00
Kamil Śliwak 751caf0ed3 [yul-phaser] Common: Add ChromosomeLengthMetric 2020-02-19 16:36:14 +01:00
cameel 2238919c76 [yul-phaser] Add ProgramSize metric 2020-02-19 16:36:14 +01:00
cameel 096129fbc4 [yul-phaser] Base class for fitness metrics 2020-02-19 16:36:14 +01:00
chriseth 357c936243 Merge pull request #8325 from imapp-pl/yul-phaser-population-tweaks
[yul-phaser] Miscellaneous Population tweaks and improvements
2020-02-19 12:35:10 +01:00
chriseth 8f2c5fc081 Merge pull request #8287 from a3d4/cmdlinetests-mingw
Adapted cmdlineTests.sh for MinGW
2020-02-19 11:50:24 +01:00
a3d4 4a29726f76 Adjusted solc path and fixed remapping tests in cmdlineTests.sh under mingw64. 2020-02-19 06:05:11 +01:00
chriseth ba9f740a8f Merge pull request #8345 from ethereum/release
Merge release back into develop.
2020-02-18 21:36:20 +01:00
chriseth 79bb6b80e8 Merge pull request #8342 from ethereum/bumpVersion064
Set version to 0.6.4.
2020-02-18 21:35:57 +01:00
Kamil Śliwak 31d8d5930a [yul-phaser] Population: Equality operators for populations and individuals 2020-02-18 19:40:37 +01:00
cameel d9c5e2dc9f [yul-phaser] Population: Add operator+() 2020-02-18 19:40:37 +01:00
Kamil Śliwak ecb30c670f [yul-phaser] Population: Make ordering of individuals with same fitness deterministic and prioritise shorter chromosomes
- Before this change the order of chromosomes with the same fitness in a population depended on the initial order set when the population was first created. Now it only depends on the individual.
- The length comparison is not strictly necessary (lexicographical order covers that) but it makes the intention clear and the comparison slightly faster when chromosomes have different lengths.
2020-02-18 19:40:37 +01:00
Kamil Śliwak 40a6669538 [yul-phaser] Population: Extract a function for comparing fitness of individuals
- Mostly for readability and convenience. This significantly shortens calls to sort().
- I could define it as Individual::operator< instead but it would be inconsistent with operator== because it does not compare the chromosomes, only fitness. It could result in an unintuitive situation where (a <= b <= a) does not necessarily imply (a == b).
2020-02-18 19:40:37 +01:00
Kamil Śliwak 823e715902 [yul-phaser] Population+Chromosome: Better tests for makeRandom() 2020-02-18 19:40:37 +01:00
Kamil Śliwak 806891f494 [yul-phaser] Population: Customizable chromosome length in makeRandom() 2020-02-18 19:40:37 +01:00
Kamil Śliwak e771f00971 [yul-phaser] Population: Extract Program construction in tests into a fixture 2020-02-18 19:38:55 +01:00
Kamil Śliwak d22c59aa0e [yul-phaser] Chromosome: Add a constructor that reads steps from an abbreviation string 2020-02-18 19:38:55 +01:00
Kamil Śliwak 38f79a1761 [yul-phaser] Common: Add chromosomeLengths() 2020-02-18 19:38:55 +01:00
Kamil Śliwak 837ea96da7 [yul-phaser] Move stripWhitespace() from Program tests to Common 2020-02-18 19:38:55 +01:00
cameel 71dcbf9df5 [yul-phaser] Population: Remove ambiguous default from one of the constructors 2020-02-18 19:38:55 +01:00
Kamil Śliwak b3f595ce9d [yul-phaser] Population: Remove unused include for <iostream> 2020-02-18 19:38:55 +01:00
chriseth 9dd9a68c08 Set version to 0.6.4. 2020-02-18 16:42:02 +01:00
chriseth a56159368a Merge pull request #8322 from ethereum/bytecodeRepoDirectoryNames
Add hour and minute to bytecode repo directory names.
2020-02-18 15:51:01 +01:00
Chris Chinchilla 9641d93167 Clarify array copying semantics 2020-02-18 16:50:34 +02:00
chriseth 8dda952108 Merge pull request #8341 from ethereum/develop
Merge develop into release for 0.6.3
v0.6.3
2020-02-18 15:50:19 +01:00
chriseth c2e22d4cab Merge pull request #8221 from ethereum/structured-docs-error-locations
[parser] Source locations for structured documentation errors
2020-02-18 14:57:28 +01:00