Daniel Kirchner
|
a5427bc63a
|
Add optimizer rules for multiplication and division by left-shifted one.
|
2019-05-14 16:20:45 +02:00 |
|
Mathias Baumann
|
5c66ccc179
|
Optimize obsolete ANDs in combination with certain SHIFTs
|
2019-03-29 10:08:05 +01:00 |
|
Alex Beregszaszi
|
84fbf605aa
|
Replace shifts by larger than 255 with 0
|
2019-03-29 10:07:54 +01:00 |
|
chriseth
|
2308904f68
|
Remove "using namespace" from header and move Instruction to dev::eth.
|
2019-03-28 13:48:11 +01:00 |
|
Bhargava Shastry
|
f7b5a27581
|
Fixes bug in byte optimization rule and adds tests.
|
2019-03-21 14:29:06 +01:00 |
|
chriseth
|
4c1a9aa273
|
Merge pull request #6256 from ethereum/completeLtGtRules
Complete the GT/LT rules.
|
2019-03-13 12:08:34 +01:00 |
|
chriseth
|
571f400a3e
|
Complete the GT/LT rules.
|
2019-03-13 12:01:23 +01:00 |
|
Bhargava Shastry
|
515fa872c8
|
Fixes u256 overflow in logical shift optimization rule and adds tests.
|
2019-03-13 11:19:20 +01:00 |
|
chriseth
|
34082a2368
|
Merge pull request #6159 from ethereum/more-optims
More optimiser rules for LT/GT/AND/BYTE and address cleanups
|
2019-03-04 16:24:38 +01:00 |
|
Alex Beregszaszi
|
1272951bbb
|
Do not mask with 160-bits after CREATE/CREATE2
|
2019-03-04 14:42:29 +01:00 |
|
Alex Beregszaszi
|
7aa2ee1775
|
More optimiser rules for LT/GT/AND/BYTE
|
2019-03-04 14:42:29 +01:00 |
|
Alex Beregszaszi
|
a7c2dba681
|
Document the boost multiprecision shift bug in RuleList
|
2019-03-04 13:37:20 +01:00 |
|
Alex Beregszaszi
|
4430fe6a54
|
Combine multiple shifts with constant shift-by values in the optimiser
|
2019-02-25 20:56:13 +00:00 |
|
Alex Beregszaszi
|
fd936439a4
|
Add more optimisation rules for shifts
|
2019-02-20 11:59:15 +00:00 |
|
Daniel Kirchner
|
870b656eda
|
Split up rule list generation further to prevent issues in browsers with the emscripten build.
|
2019-01-18 17:02:47 +01:00 |
|
Daniel Kirchner
|
a1d73a7bef
|
Split simplification rules into two functions.
|
2018-09-18 14:28:21 +02:00 |
|
Leo Arias
|
c4a3c48aea
|
Fix typo
|
2018-08-07 13:35:15 -06:00 |
|
Cryptomental
|
140dbfdbd8
|
Code, Changelog, ReleaseChecklist: Fix typos.
Refs: #4442
|
2018-07-11 00:26:23 +02:00 |
|
Alex Beregszaszi
|
38460d8b47
|
Remove unnecessary masking of the result of known short instructions
|
2018-04-19 23:59:06 +01:00 |
|
Alex Beregszaszi
|
cb352edd26
|
Add constant optimiser for SHR/SHL instructions
|
2018-04-09 20:07:44 +01:00 |
|
Alex Beregszaszi
|
037b97ef4a
|
Replace MOD with AND if constant is power of 2
|
2018-02-12 22:47:04 +00:00 |
|
chriseth
|
c961a3079d
|
Turn simplification rule tuple into struct.
|
2018-02-06 22:51:30 +01:00 |
|
chriseth
|
295f8c07ad
|
Explicitly add reversed operands for commutative operations.
|
2018-02-06 22:51:30 +01:00 |
|
chriseth
|
9eea3f29ba
|
Expression simplifier.
|
2018-02-06 22:51:30 +01:00 |
|
chriseth
|
b8074cdf78
|
Add flag to indicate whether it can be applied to expressions with side-effects.
|
2018-02-06 22:51:30 +01:00 |
|
chriseth
|
491d6d3e0c
|
Move out the rule list.
|
2018-02-06 22:51:30 +01:00 |
|