Commit Graph
700 Commits
Author SHA1 Message Date
Mathias Baumann 981983089c [Sol -> Yul] Implement delete for function pointers 2019-05-23 15:51:59 +02:00
Mathias Baumann 81702717b0 [Sol -> Yul] Enable function pointer comparison 2019-05-23 12:52:50 +02:00
chriseth 97fa21841d Use different way to fall back to FunctionalInstruction for loose assembly. 2019-05-23 11:30:12 +02:00
chriseth e324deabd6 Merge pull request #6740 from ethereum/unary-ops
[Sol -> Yul] Implement Int/Bool Unary: ++, --, ~, !
2019-05-20 18:06:01 +02:00
Daniel Kirchner b6f4d4e9bc [Sol - Yul] Implement checked multiplication. 2019-05-20 17:36:53 +02:00
Mathias Baumann 86000fdcce [Sol -> Yul] Implement unary -, + 2019-05-20 16:14:46 +02:00
Mathias Baumann 7dbcb80523 [Sol -> Yul] Implement Int/Bool Unary: ++, --, ~, ! 2019-05-20 11:43:12 +02:00
chriseth f2ae30f620 Fix handling of structs of dynamic size as constructor parameters. 2019-05-16 17:10:54 +02:00
Mathias Baumann f5980f08cc Remove m_code from IRValue
Only one place to append to m_code avoids confusion and bugs
2019-05-14 11:15:04 +02:00
chriseth 8c232e8196 Merge pull request #6690 from ethereum/useConditionalWhiskers
Use conditional whiskers
2019-05-13 10:23:30 +02:00
chriseth a28b6224a4 Merge pull request #6714 from ethereum/finishERC20
Finish ERC20
2019-05-13 10:00:38 +02:00
chriseth e047c8d4d9 Code generator for external function calls. 2019-05-09 18:55:12 +02:00
chriseth 63a072f122 [SolYul] Partially implement constructor. 2019-05-09 17:57:33 +02:00
chriseth 021b312264 Revert with reason. 2019-05-09 17:57:33 +02:00
chriseth 60a42f58a0 Fix internal function calls. 2019-05-09 17:57:33 +02:00
chriseth 45ee3fc007 Subtraction for unsigned integers. 2019-05-09 17:57:30 +02:00
chriseth b3e51bcae1 Some more compression. 2019-05-09 15:25:21 +02:00
chriseth d3d205b6eb Some more compression. 2019-05-09 15:25:21 +02:00
chriseth c6b9fa96ae Use conditional Whiskers. 2019-05-09 15:25:21 +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 b4d6f847b4 Events. 2019-05-08 13:29:11 +02:00
chriseth acca390ef5 Most trivial members. 2019-05-07 17:19:45 +02:00
chriseth b99ad2aaa3 Merge pull request #6639 from ethereum/yul-require-assert
Yul generation of "require" and "assert"
2019-05-07 16:59:37 +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 785b369b89 Add type helper function. 2019-05-07 12:36:54 +02:00
chriseth 3fa4c3da1e Comparison operations. 2019-05-07 12:35:05 +02:00
chriseth 4069b19734 Unary operation for literals. 2019-05-07 12:35:04 +02:00
Mathias Baumann 7f14352bbf Yul generation of require and assert 2019-05-07 12:19:41 +02:00
chriseth e6f8aaafa5 Conversion for string literals. 2019-05-07 11:55:17 +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 31b7037749 Move storage access functions to utils. 2019-05-02 12:11:41 +02:00
chriseth e66ab6c036 Helper function to define the value of expressions. 2019-04-30 13:10:37 +02:00
chriseth 0eef51ffa4 Conversion during binary operation. 2019-04-30 13:10:37 +02:00
chriseth 597d37b731 Implement for loops. 2019-04-30 13:10:37 +02:00
chriseth c1ca16cd33 Implement return. 2019-04-30 13:10:36 +02:00
Erik Kundt 381ed5a302 Unifies behavior for member access of ABI functions. 2019-04-29 14:27:10 +02:00
Erik Kundt c02257207b Removes assert on magic ABI functions during codegen. 2019-04-26 15:01:35 +02:00
chriseth 309d3e65cf Merge pull request #6585 from ethereum/fixInvalidFunctionTags
Fix invalid function tags
2019-04-25 16:30:37 +02:00
chriseth 5b991c1e59 Fix use of uninitialized functions stored in storage. 2019-04-25 15:40:48 +02:00
Mathias Baumann 1ef213cc15 Sol -> Yul: Implement explicit cast 2019-04-24 22:52:17 +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
Christian Parpart 721bf367a3 [libsolidity] TypeProvider: eliminate redundant "Type" suffix in provider function signatures. 2019-04-17 14:42:07 +02:00
Christian Parpart 58a45f2cb6 [libsolidity] TypeProvider: adds explicit uint256() accessor and removes default params in integerType(...). 2019-04-16 18:28:40 +02:00