Commit Graph

405 Commits

Author SHA1 Message Date
chriseth
d0d4bca35b Extend side effects to operations. 2022-03-01 16:06:20 +01:00
soroosh-sdi
816d8021e4 Remove linking to unqualified library name
- SemanticTests accepts fully qualified library name and also unqualifed library name when
the library is defined in the same file for convenience.
- commandline tests are added!

Signed-off-by: soroosh-sdi <soroosh.sardari@gmail.com>
2021-10-20 18:11:58 +03:30
Christian Parpart
b1dd0d0d02 Properly compute source mappings for immutables. 2021-10-12 17:56:17 +02:00
Kamil Śliwak
f7c4ed849d Handle DebugInfoSelection in the code printing Yul and EVM assembly 2021-10-11 20:34:48 +02:00
Christian Parpart
3f08b2269a Adds fmtlib as 3rdparty dependency for easier string composition. 2021-10-11 13:35:08 +02:00
chriseth
ebba11a33e
Merge pull request #12022 from ethereum/urls-to-latest-boost-docs
[Docs] Always link to the latest version of Boost docs
2021-09-27 12:15:42 +02:00
Alex Beregszaszi
3c8846e669
Merge pull request #11976 from ethereum/json-cleanup
Some cleanup and testing for JSON
2021-09-24 19:03:45 +01:00
Kamil Śliwak
caccd0a3e0 Always refer to the latest version of Boost in URLs 2021-09-24 15:35:33 +02:00
chriseth
1531863835 Split Common.h into Numeric.h. 2021-09-23 15:27:29 +02:00
chriseth
c8e6ef9657
Merge pull request #12004 from ethereum/disambiguateBytesRequired
Disambiguate bytesRequired
2021-09-23 15:25:44 +02:00
chriseth
50ce1f5ddd Disambiguate bytesRequired 2021-09-22 11:22:07 +02:00
chriseth
2741175507 Use function debug data. 2021-09-22 11:11:51 +02:00
Alex Beregszaszi
55c64e3ca1 Always explicitly initialise Json objects 2021-09-21 10:49:13 +01:00
Bhargava Shastry
94086e734b Do not use std::iterator that is deprecated in c++17. 2021-09-14 14:00:37 +02:00
Alexander Arlt
7fcf888fbf Remove unused AssemblyItemType::PushString. 2021-09-13 18:59:18 +02:00
chriseth
55bb53c9de
Merge pull request #11912 from ethereum/refactorSourcePrinting
Refactor source printing
2021-09-08 14:07:07 +02:00
Kamil Śliwak
a7612ce873 Move the function for creating code snippets used next to source locations in assembly to liblangutil 2021-09-07 17:18:22 +02:00
chriseth
3fe52d9869 Run the optimizer only once. 2021-09-07 15:06:31 +02:00
chriseth
2a8090d797 New simplification rules. 2021-08-19 12:51:54 +02:00
chriseth
16787ecfd6 Optimizer rules for signextend. 2021-08-16 18:54:33 +02:00
chriseth
90c4623460 Some more base fees. 2021-08-12 16:37:21 +02:00
hrkrshnn
11b80dc8ce Updated changes in refunds: EIP-3529
Refunds are not accounted in Solidity's gas meter.
2021-08-11 09:55:21 +02:00
hrkrshnn
d92b211a2f Added the instruction basefee. 2021-08-09 16:18:08 +02:00
Kamil Śliwak
6753c8f624 Rename escapeAndQuoteYulString() back to escapeAndQuoteString() 2021-07-14 21:29:01 +02:00
chriseth
f75b55071e Remove CharStream from SourceLocation. 2021-07-14 15:12:07 +02:00
Kamil Śliwak
6ad6fa2382 Do not hard-code the default 'runs' value as 200 in code that fills out optimizer settings 2021-06-28 14:12:28 +02:00
chriseth
0df8a38e55 Support metadata via IR. 2021-06-21 18:20:31 +02:00
TerranCivilian
c15501eea9 Remove unneeded include files 2021-06-07 12:53:18 -04:00
hrkrshnn
7d28ea3746 Updated gas costs for Berlin 2021-05-26 11:36:43 +02:00
chriseth
f9c94d7c42 Note function entry points. 2021-05-04 17:15:13 +02:00
chriseth
cb1af8b88a Make verbatim compatible with KnownState. 2021-04-26 19:56:44 +02:00
chriseth
e2d8005737 Add verbatim builtin. 2021-04-26 19:56:44 +02:00
Alex Beregszaszi
e39433198d Remove the usage of boost::noncopyable
Prior to this half of the codebase used explicit deleted copy constructors, the others used boost::noncopyable.
2021-04-23 14:57:01 +01:00
chriseth
6dba5f5c2b Remove semantic information function for assembly items. 2021-04-13 18:34:16 +02:00
anurag4u80
bbcdddeed9 Replaced keys, values and reverse with ranges 2021-03-31 23:33:04 +05:30
Daniel Kirchner
8b3095920a Inline ordinary jumps to small blocks and jumps to terminating control flow. 2021-03-24 13:50:24 +01:00
hrkrshnn
2ecb20589b Fix bug about incorrect caching on Keccak256 hashes 2021-03-23 10:49:24 +01:00
chriseth
f38274d94d Disable nodiscard warning. 2021-03-23 09:51:59 +01:00
chriseth
d18db63843 Changelog entry. 2021-03-18 08:42:49 +01:00
chriseth
4bfa7e088e Optimize multiplication by constant to shift. 2021-03-18 08:42:49 +01:00
Daniel Kirchner
d5281877cc Fix inliner heuristics. 2021-03-15 20:31:56 +01:00
Daniel Kirchner
a75424eec4 Drop support for evm15 and eip-615. 2021-03-09 15:56:03 +01:00
chriseth
5c2cd8d553
Merge pull request #11073 from ethereum/extractStackReuseTests
Extract StackReuseCodegen tests.
2021-03-09 15:52:23 +01:00
Daniel Kirchner
e99da7e015 Extract StackReuseCodegen tests. 2021-03-09 15:47:24 +01:00
chriseth
40c27ccc22 Move AND with constant inside OR. 2021-03-09 15:26:19 +01:00
chriseth
9b20c9840a
Merge pull request #10885 from ethereum/heuristic-revamp
Yul Backend: Get rid of heuristics for finding the matching runtime
2021-02-10 00:49:56 +01:00
Daniel Kirchner
cb74a45fd6 Add inlining for old optimizer. 2021-02-09 19:08:58 +01:00
Mathias Baumann
e4f1257c83 Yul Backend: Get rid of heuristics for finding the matching runtime 2021-02-09 14:50:25 +01:00
chriseth
d46da8e53c Optimize iszero(sub(x, y)) to eq(x, y). 2020-12-22 15:11:48 +01:00
Alex Beregszaszi
97173247c0 Improve the Error class with a constructor for secondaryLocation
Remove occurances of Error construction using the boost helpers.
2020-12-17 13:50:04 +00:00