Commit Graph
41 Commits
Author SHA1 Message Date
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
chriseth c0bf529236 Support bare calls. 2020-05-11 15:11:46 +02:00
Alex Beregszaszi 327c75bc1b IR generation for shifts 2020-05-06 19:14:23 +02:00
Daniel Kirchner 234ffcf278 Merge pull request #8718 from ethereum/irConstants
IR generation for constants.
2020-05-06 16:05:17 +02:00
chriseth 02c20698c9 IR generation for constants. 2020-05-05 17:07:55 +02:00
Daniel Kirchner 7ad319687d Sol->Yul: Add cleanup to operations. 2020-05-05 13:06:01 +02:00
chriseth 16ed53ddd0 Merge pull request #8591 from mijovic/sol2YulConstructorParams
[Sol2Yul] Adding support for constructors with parameters (inheritance)
2020-04-23 12:56:54 +02:00
Djordje Mijovic 5329da93fb [Sol2Yul] Adding support for constructors with parameters in case of inheritance 2020-04-22 14:47:08 +02:00
chriseth 4908101ad7 Yul IR generation for member access to type types. 2020-04-22 11:25:27 +02:00
hrkrshnn 4760b8589d Replaced all instances of lValueRequested to willBeWrittenTo 2020-04-20 12:33:30 +05:30
Christian Parpart d00d3c45b1 [Sol2Yul] Implements codegen part for try/catch statements. 2020-04-14 18:42:37 +02:00
Leonardo Alt 39ff0deb05 Zero initialize memory arrays 2020-04-02 15:55:18 +02:00
chriseth 6a896f766a Function call options for YulIR. 2020-03-10 22:38:11 +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
Daniel Kirchner 3c9f18b749 Use IRVariable's in IR code generation and implement tuples. 2020-02-12 12:36:14 +01:00
chriseth 6ded158739 Change expression parts to use strings instead of numbers. 2020-01-27 08:55:11 +01:00
Christian Parpart 6b23412fae C++ namespace cleanup (except tests). 2020-01-07 15:51:50 +01:00
Daniel Kirchner 4782c800ec Initial introduction of array slices with partial implementation for dynamic calldata arrays. 2019-09-13 10:57:53 +02:00
Christian Parpart 235638b3fc Implements constructor code for state variables. 2019-08-05 11:23:01 +02:00
chriseth fb40063253 Compound assignment. 2019-05-23 21:32:30 +02:00
Mathias Baumann 7dbcb80523 [Sol -> Yul] Implement Int/Bool Unary: ++, --, ~, ! 2019-05-20 11:43:12 +02:00
chriseth e047c8d4d9 Code generator for external function calls. 2019-05-09 18:55:12 +02:00
Daniel Kirchner b83f6d8d46 [Sol -> Yul] Implement if statements 2019-05-09 14:52:20 +02:00
Mathias Baumann 0abe00d393 [Sol -> Yul] Fix ForLoops and implement WhileLoops 2019-05-09 09:46:19 +02:00
chriseth 595544645e Mappings. 2019-05-08 15:54:52 +02:00
chriseth acca390ef5 Most trivial members. 2019-05-07 17:19:45 +02:00
chriseth f68c09272b Simple tuple expressions. 2019-05-07 15:59:56 +02:00
chriseth c604481cef Logical operators. 2019-05-07 15:59:35 +02:00
chriseth 4069b19734 Unary operation for literals. 2019-05-07 12:35:04 +02:00
chriseth 3365cb9b4a Add type helper function. 2019-05-06 12:01:13 +02:00
chriseth 7c62193524 Change some AST elements to post visit. 2019-05-06 11:43:18 +02:00
chriseth aa4d4afcdc LValues and state variables of value type. 2019-05-02 17:03:22 +02:00
chriseth e66ab6c036 Helper function to define the value of expressions. 2019-04-30 13:10:37 +02:00
chriseth 597d37b731 Implement for loops. 2019-04-30 13:10:37 +02:00
Mathias Baumann 441369d5f1 Sol -> Yul Generator: Mark "return" as unimplemented 2019-04-24 22:52:17 +02:00
Mathias Baumann 944ac6fb6d Sol -> Yul Generation: Implicit conversions 2019-04-24 22:52:17 +02:00
Mathias Baumann 3d061c83d7 IR: Generate inline asm blocks 2019-04-18 16:49:19 +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