chriseth
449a8533ce
Merge pull request #8340 from mijovic/value-keyword-wei
...
TestFileParser: Adding keyword wei for expressing function call value
2020-02-24 15:01:15 +01:00
Djordje Mijovic
dd9009eba6
TestFileParser: Adding new keyword wei for expressing function value
2020-02-21 11:39:37 +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
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
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
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
chriseth
64f9dc351e
Merge pull request #8337 from mijovic/assembly-multifile
...
Assembly: Added missing source field to legacy assembly json output
2020-02-18 12:47:19 +01:00
Djordje Mijovic
18dea6b69c
Assembly: Added missing source field to legacy assembly json output to complete the source reference
2020-02-18 10:22:34 +01:00
Jason Cobb
6db0d50094
Don't use identifiers starting with an underscore followed by an uppercase letter
2020-02-17 12:44:39 -05:00
chriseth
2d1c4b770f
Merge pull request #8321 from ethereum/removeStackFromAsmAnalysis
...
Remove stack counting from Asm Analysis.
2020-02-17 14:32:17 +01:00
chriseth
c50631d4e2
Update tests.
2020-02-17 12:58:06 +01:00
chriseth
29e5cd89be
Remove stack counting from Asm Analysis.
2020-02-17 12:58:05 +01:00
Kamil Śliwak
f29d3655f7
[yul-phaser] SimulationRNG: Add bernoulliTrial()
2020-02-16 02:18:21 +01:00
Kamil Śliwak
a8fa332a9c
[yul-phaser] SimulationRNG: Rewrite uniformInt() and binomialInt() tests to rely on variance and expected value
2020-02-16 02:18:21 +01:00
Kamil Śliwak
db140a667a
[yul-phaser] SimulationRNG: Use a single, shared and seedable generator
2020-02-16 02:18:21 +01:00
Kamil Śliwak
342a4e5dee
[yul-phaser] Rename Random to SimulationRNG (fix references)
2020-02-16 02:18:21 +01:00
Kamil Śliwak
0d28d5a287
[yul-phaser] Rename Random to SimulationRNG (file move)
2020-02-16 02:18:21 +01:00
Kamil Śliwak
b01766c4db
[yul-phaser] Gather functions from Random into SimulationRNG class
2020-02-16 02:18:21 +01:00
Kamil Śliwak
4ee9174454
[yul-phaser] Chromosome: Make randomOptimisationStep() public
...
- And add tests now that it's public.
2020-02-16 02:18:21 +01:00
Kamil Śliwak
46d69d0941
[yul-phaser] Common: Add enumerateOptimisationSteps()
2020-02-16 02:18:21 +01:00
Kamil Śliwak
957ca00588
[yul-phaser] Common: Add mean() and meanSquaredError()
2020-02-15 22:21:20 +01:00
Kamil Śliwak
94538efc0e
[yul-phaser] Add a file for small utilities used in yul-phaser's tests
2020-02-15 22:21:20 +01:00
Kamil Śliwak
40b086774a
[yul-phaser] Random: Fix tests allocating more counters than necessary
...
- The tests weren't broken, just less efficient.
2020-02-15 22:21:20 +01:00
Erik Kundt
017d33cfbe
Fix typos in filenames within docstring syntax tests.
2020-02-14 15:53:39 +01:00
Erik Kundt
1d2e1c4f0a
Adds command line test for structured doc errors.
2020-02-14 15:53:39 +01:00
Erik Kundt
85fc0b597b
Adjusts tests to source locations for structured documentation errors.
2020-02-14 15:53:39 +01:00
chriseth
99f88742d6
Merge pull request #8263 from ethereum/functionSelectorPure
...
Mark function selectors accessed via declaration as pure.
2020-02-14 12:34:39 +01:00
Daniel Kirchner
9f094d59b9
Mark function selector accesses as pure for pure expressions and mark function accesses via contract name as pure.
2020-02-14 12:33:33 +01:00
Christian Parpart
c92fe69a60
Finishes external call implementation.
2020-02-14 11:59:04 +01:00
Leonardo Alt
3800391a1a
[Yul] Support conditionals
2020-02-13 17:02:15 -04:00
Mathias L. Baumann
c635377450
Merge pull request #8313 from ethereum/checkFunctionsExistInIsoltest
...
Make type error fatal to prevent assert failure at later point
2020-02-13 16:08:13 +01:00
Mathias Baumann
8911b58a6d
Make type error fatal to prevent assert failure at later point
2020-02-13 15:16:28 +01:00
Daniel Kirchner
7af581df1f
Merge pull request #8309 from ethereum/checkFunctionsExistInIsoltest
...
Check that functions exist in isoltest.
2020-02-13 14:29:58 +01:00