Kamil Śliwak
|
b1a773be2f
|
IRGenerator: Leave IR optimization up to the caller to avoid unnecessarily doing it twice
|
2023-06-07 19:44:40 +02:00 |
|
Rodrigo Q. Saramago
|
a0e62bbd3d
|
Annotate function ID of functions that may be called via the internal dispatch.
Co-authored-by: Daniel <daniel@ekpyron.org>
|
2023-03-20 20:14:41 +01:00 |
|
Daniel Kirchner
|
e6848caac1
|
Allow annotating inline assembly as memory-safe.
|
2022-03-02 16:42:28 +01:00 |
|
Kamil Śliwak
|
bcfefc79d9
|
Pass DebugInfoSelection down to the code handling assembly printing
|
2021-10-11 20:34:48 +02:00 |
|
Kamil Śliwak
|
f7c4ed849d
|
Handle DebugInfoSelection in the code printing Yul and EVM assembly
|
2021-10-11 20:34:48 +02:00 |
|
Kamil Śliwak
|
14639efc5d
|
Print code snippets next to source locations in IR output
|
2021-09-14 12:09:59 +02:00 |
|
chriseth
|
f14b7598c7
|
Only list used source names.
|
2021-09-06 18:33:05 +02:00 |
|
Marenz
|
121fd40f74
|
Allow reading of immutables during construction time
|
2021-08-19 13:59:05 +02:00 |
|
Alexander Arlt
|
8accf420ea
|
[yul] Functions: Remove dependency on AST ID.
|
2021-06-23 16:15:25 +02:00 |
|
Djordje Mijovic
|
838f59fa5b
|
Adding origin location notation to yul ir.
|
2021-06-21 18:48:20 +02:00 |
|
chriseth
|
62355aead3
|
Respect memory model for revert.
|
2021-05-03 18:23:41 +02:00 |
|
chriseth
|
ccaa81fbe7
|
Implement function modifiers.
|
2020-12-17 17:00:51 +01:00 |
|
chriseth
|
a3c5d37d02
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-12-07 17:13:48 +01:00 |
|
Alex Beregszaszi
|
1e2bfbd6b2
|
Enable the -Wextra-semi warning
|
2020-12-04 17:21:19 +01:00 |
|
chriseth
|
9a5902f9d7
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-12-02 12:28:02 +01:00 |
|
Kamil Śliwak
|
630fcc3a1d
|
Define a comparator for InternalDispatchMap to ensure deterministic ordering of dispatch functions
|
2020-12-01 16:53:54 +01:00 |
|
Mathias Baumann
|
f8e6f4a4eb
|
Use annotation.calledDirectly to simplify IR codegen
|
2020-11-30 18:54:42 +01:00 |
|
chriseth
|
527c073bb9
|
Checked arithmetic by default.
|
2020-10-19 16:58:37 +02:00 |
|
Daniel Kirchner
|
f4b42d1c72
|
Add stack limit evader.
|
2020-09-17 22:13:27 +02:00 |
|
Djordje Mijovic
|
d99b81ef02
|
[Sol->Yul] Enabling storage pointers to local vars in inline assembly.
|
2020-08-26 10:25:42 +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 |
|
Kamil Śliwak
|
1a2e441bc5
|
Generate internal dispatch only for functions that might actually get called via pointers
- This also adds support for internal library calls as a side-effect since they'll now be pulled into the internal dispatch automatically.
|
2020-05-26 17:01:50 +02:00 |
|
Kamil Śliwak
|
6c6a8a74e8
|
IRGenerationContext: Extract code for enumerating dispatchable functions from generateInternalDispatch() into a separate function
|
2020-05-20 13:16:08 +02:00 |
|
Kamil Śliwak
|
7d2292fbaf
|
Rename IRGenerationContext::internalDispatch() to generateInternalDispatchFunction()
|
2020-05-20 12:46:31 +02:00 |
|
Kamil Śliwak
|
1a521cc7ac
|
Use YulArity in IR generator
|
2020-05-19 23:03:21 +02:00 |
|
Kamil Śliwak
|
465e4d4088
|
Extract more functions for generating function and variable names into IRNames
|
2020-05-15 14:51:00 +02:00 |
|
Kamil Śliwak
|
7af7273b60
|
Move static functions for constructing names from IRGenerationContext into the new Common module
|
2020-05-14 19:48:00 +02:00 |
|
chriseth
|
51ccb1519f
|
Yul codegen for immutables.
|
2020-05-04 15:00:50 +02:00 |
|
Djordje Mijovic
|
f3f729549d
|
[Sol->Yul] Enabling creation function call
|
2020-04-27 16:15:57 +02:00 |
|
Kamil Śliwak
|
c7947c1af6
|
Implement lazy function generation using function generation queue
|
2020-04-17 13:28:07 +02:00 |
|
Christian Parpart
|
d00d3c45b1
|
[Sol2Yul] Implements codegen part for try/catch statements.
|
2020-04-14 18:42:37 +02:00 |
|
chriseth
|
173f234860
|
Refactor: Replace inheritance hierarchy by most derived contract.
|
2020-03-26 18:27:39 +01:00 |
|
Daniel Kirchner
|
857ed12b05
|
Use plain members and references instead of shared pointers for MultiUseYulFunctionCollector
|
2020-03-04 16:16:34 +01:00 |
|
Daniel Kirchner
|
3c9f18b749
|
Use IRVariable's in IR code generation and implement tuples.
|
2020-02-12 12:36:14 +01:00 |
|
Leonardo Alt
|
36928c7a35
|
Add reason string for internal reverts
|
2020-02-10 11:57:20 -03:00 |
|
chriseth
|
6ded158739
|
Change expression parts to use strings instead of numbers.
|
2020-01-27 08:55:11 +01:00 |
|
Christian Parpart
|
345f9928ab
|
Library libdevcore renamed to libsolutil.
|
2020-01-07 15:51:50 +01:00 |
|
Christian Parpart
|
6b23412fae
|
C++ namespace cleanup (except tests).
|
2020-01-07 15:51:50 +01:00 |
|
Mathias Baumann
|
d264e3e0ba
|
[Sol->Yul] Implement getter functions
|
2019-07-10 13:42:39 +02:00 |
|
chriseth
|
e047c8d4d9
|
Code generator for external function calls.
|
2019-05-09 18:55:12 +02:00 |
|
Mathias Baumann
|
7f14352bbf
|
Yul generation of require and assert
|
2019-05-07 12:19:41 +02:00 |
|
chriseth
|
aa4d4afcdc
|
LValues and state variables of value type.
|
2019-05-02 17:03:22 +02:00 |
|
chriseth
|
565d9837e4
|
Virtual function calls.
|
2019-04-11 15:45:43 +02:00 |
|
chriseth
|
18ab8aeb85
|
Overflow-checked addition.
|
2019-04-11 15:45:14 +02:00 |
|
chriseth
|
420a7dc3d6
|
Initial IR generator.
|
2019-04-04 15:02:42 +02:00 |
|