Daniel Kirchner
06820e1b1e
Remove unused entry point to evmasm Assembly.
2022-03-07 12:14:08 +01:00
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
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
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
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
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
chriseth
f9c94d7c42
Note function entry points.
2021-05-04 17:15:13 +02:00
chriseth
e2d8005737
Add verbatim builtin.
2021-04-26 19:56:44 +02:00
Daniel Kirchner
cb74a45fd6
Add inlining for old optimizer.
2021-02-09 19:08:58 +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
chriseth
806453aca9
Merge remote-tracking branch 'origin/develop' into breaking
2020-12-08 21:00:09 +01:00
Alex Beregszaszi
7e88ba8da0
Enable the -Wconversion warning
2020-12-08 16:45:24 +00:00
chriseth
e93a84ccd4
Merge remote-tracking branch 'origin/develop' into HEAD
2020-10-28 18:19:31 +01:00
Alex Beregszaszi
e5faea5f35
Make use of pushInstruction() helper in libevmasm
2020-10-28 10:11:54 +00:00
Daniel Kirchner
68667f0e84
Remove POPs from ASSIGNIMMUTABLE generated bytecode, if possible.
2020-10-15 18:14:41 +02:00
Daniel Kirchner
0dca223b45
Add another argument to setimmutable and the AssignImmutable opcode, allowing to modify code at any memory offset.
2020-10-15 18:14:41 +02:00
a3d4
5b54cfbed3
Report an error if immutables not assigned
2020-07-23 16:38:54 +02:00
Djordje Mijovic
6f97e6153c
[yul] Adding support for accessing subobjects via .
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2020-07-21 17:56:11 +02:00
chriseth
1c9179683e
Merge pull request #9433 from ethereum/reportAllStackErrors
...
Report all stack errors
2020-07-20 15:44:51 +02:00
Sachin Grover
b7adb2aa42
Add SPDX license identifier if not present already in source file
...
Fixes : #9220
2020-07-17 20:24:12 +05:30
Daniel Kirchner
92cd1ddb7d
Add markAsInvalid to the various assemblies.
2020-07-16 17:38:13 +02:00
Djordje Mijovic
e4e3f49844
Fixing signedness conversion warnings in libevmasm
...
Co-authored-by: Harikrishnan Mulackal <webmail.hari@gmail.com>
2020-06-03 13:25:43 +02:00
a3d4
a499ef16fa
Fix spelling errors
2020-05-25 02:54:37 +02:00
Daniel Kirchner
81652686be
Debug information for immutable references.
2020-04-06 10:56:42 +02:00
Daniel Kirchner
04d8ad2ae1
Legacy codegeneration for immutable state variables.
2020-03-24 16:45:25 +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
alex
e4b18e85e6
Replaced SourceLocation::isEmpty() with isValid() and hasText().
...
The function SourceLocation::isEmpty() had somewhat dual role.
Sometimes it indicates that the SourceLocation is invalid.
Sometimes it means that there is no corresponding source text.
Hence the proposal is to replace it with two functions, isValid() and hasText().
I also removed Scanner::sourceAt(). (Do we have a rule of thumb to remove unused code?)
Since hasText() checks that start and end are valid indices for source, I adjusted a couple of tests to avoid empty source strings.
2020-02-03 08:04:21 +01:00
Alex Beregszaszi
9c19b93c37
Remove LLL specific features from libevmasm
2020-01-15 13:27:51 +00:00
Christian Parpart
6b23412fae
C++ namespace cleanup (except tests).
2020-01-07 15:51:50 +01:00
chriseth
b0db64ff5b
Merge remote-tracking branch 'origin/develop' into develop_060
2019-11-26 16:19:35 +01:00
Alex Beregszaszi
991fbd2956
Replace uses of BOOST_THROW_EXCEPTION with assertThrow
...
Where appropriate.
2019-11-26 13:07:42 +01:00
chriseth
b6ad8f06e7
Merge pull request #7782 from ethereum/develop
...
Merge develop into develop_060
2019-11-25 17:58:09 +01:00
Alex Beregszaszi
ae428dc2a0
Clarify some notes in LinkerObject and assert that linkReferences are always correct
2019-11-22 16:48:23 +00:00
Mathias Baumann
37d6fd9e21
Fix case-sensitivity depending on platform
2019-11-05 17:25:08 +01:00
chriseth
cb2096c82a
Add modifier depth to source mappings.
2019-11-05 16:50:38 +01:00
Mathias Baumann
6705420325
Fix case-sensitivity depending on platform
2019-11-04 17:00:48 +01:00
Alex Beregszaszi
59df7dbc1b
Add upper bound assert for PushSub/PushSubSize
2019-09-03 16:40:34 +01:00
chriseth
f2cee9ec0c
Include cleanup.
2019-03-28 14:32:48 +01:00
chriseth
7f6f958246
Fix: Also replace tags in the list of tags referenced from outside.
2019-02-20 15:06:23 +01:00
Alex Beregszaszi
ae1cd252b0
Take only Assembly instance as an input to ConstantOptimiser
2019-01-31 16:02:29 +00:00
Mathias Baumann
cb935fe908
Use curly-brackets initialization
2018-12-10 19:03:47 +01:00