chriseth
|
c34e349572
|
Implement checked exponentiation.
|
2020-08-18 12:42:53 +02:00 |
|
chriseth
|
9324fb4f20
|
Free functions.
|
2020-08-18 11:46:59 +02:00 |
|
Alex Beregszaszi
|
bb29307b02
|
Add/Update tests for Yul function definition
|
2020-08-12 23:53:08 +01:00 |
|
Djordje Mijovic
|
d685bee2ec
|
[Sol->Yul] Implementing struct copying from calldata to memory.
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
|
2020-08-11 16:18:06 +02:00 |
|
chriseth
|
53d497fc31
|
Merge pull request #9412 from ethereum/unicode-string
[BREAKING] Support unicode string literal type
|
2020-07-28 11:42:23 +02:00 |
|
Alex Beregszaszi
|
f5f86779b8
|
Update tests for unicode literals
|
2020-07-27 18:21:17 +01:00 |
|
Djordje Mijovic
|
96258c7e75
|
[Sol->Yul] Implementing bytes copying from calldata to memory.
|
2020-07-27 15:14:26 +02:00 |
|
chriseth
|
2c574af45b
|
Fix conversion bug for exp operation.
|
2020-07-27 10:44:42 +02:00 |
|
chriseth
|
a1da90d14b
|
Adding more tests for function types
|
2020-07-23 14:55:32 +02:00 |
|
Djordje Mijovic
|
e7d5a7da10
|
[TypeChecker] Remove function input and return parameter names from mobileType
|
2020-07-23 14:39:49 +02:00 |
|
chriseth
|
6bb6783d39
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-07-22 15:26:44 +02:00 |
|
Djordje Mijovic
|
546e9af24d
|
[Sol->Yul] Supporting .runtimeCode
|
2020-07-21 17:56:37 +02:00 |
|
chriseth
|
9be5ed1220
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-07-21 11:35:28 +02:00 |
|
chriseth
|
8bdd93f4b8
|
Update tests.
|
2020-07-20 17:17:19 +02:00 |
|
chriseth
|
50a54fa8aa
|
Implement inline arrays.
|
2020-07-20 17:06:32 +02:00 |
|
chriseth
|
0a25370eeb
|
Update tests.
|
2020-07-20 15:40:58 +02:00 |
|
chriseth
|
f945163909
|
Merge pull request #9432 from ethereum/develop
Merge develop into breaking.
|
2020-07-16 17:14:45 +02:00 |
|
Alex Beregszaszi
|
950612cf42
|
Add more tests for strings with unicode (escapes)
|
2020-07-13 20:43:30 +01:00 |
|
Daniel Kirchner
|
41710acbca
|
More semantic tests.
|
2020-07-13 18:07:11 +02:00 |
|
Daniel Kirchner
|
c3e13b6733
|
Promote gwei to a proper keyword.
|
2020-07-13 18:07:11 +02:00 |
|
chriseth
|
fc2e9ec2ff
|
Use .slot and .offest to access storage items.
|
2020-07-13 14:59:22 +02:00 |
|
chriseth
|
9ef050af9a
|
Merge pull request #9373 from ethereum/develop
Merge develop into breaking.
|
2020-07-09 16:15:43 +02:00 |
|
chriseth
|
59f4989966
|
Optimize combination of byte and shl.
|
2020-07-08 20:26:46 +02:00 |
|
chriseth
|
d4ecd33247
|
Propagate function call argument types across function call options.
|
2020-07-08 17:59:02 +01:00 |
|
chriseth
|
0c7e4cf16b
|
Merge pull request #9340 from ethereum/compileTimeSha
Evaluate keccak256 of string literals at compile-time.
|
2020-07-08 18:42:38 +02:00 |
|
chriseth
|
0a0f578d7c
|
Evaluate keccak256 of string literals at compile-time.
|
2020-07-08 16:14:14 +02:00 |
|
Mathias Baumann
|
f9d6fa71fd
|
Add create & delete array tests for yul
|
2020-07-08 13:10:33 +02:00 |
|
chriseth
|
64b6524bdb
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-07-08 09:37:14 +02:00 |
|
chriseth
|
9743390a53
|
Update tests.
|
2020-07-07 12:16:18 +02:00 |
|
chriseth
|
c0adf2bb4c
|
Tests for memory in external functions.
|
2020-07-06 17:08:24 +02:00 |
|
chriseth
|
ab68406006
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-07-06 15:25:25 +02:00 |
|
Mathias Baumann
|
50373ac1b0
|
Yul: Implement memory struct allocation
|
2020-07-02 16:37:20 +02:00 |
|
chriseth
|
3e3f9a472f
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-06-30 18:56:51 +02:00 |
|
Harikrishnan Mulackal
|
eeadb5a6b5
|
Tests, Docs and Changelog
|
2020-06-30 16:53:41 +05:30 |
|
Mathias Baumann
|
02328f3bbb
|
Add unit denomination `gwei `
|
2020-06-24 18:24:56 +02:00 |
|
chriseth
|
af0cd4ab98
|
Merge pull request #9252 from ethereum/develop
Merge develop into breaking.
|
2020-06-23 18:28:24 +02:00 |
|
Bhargava Shastry
|
0397266351
|
Implement multi source semantic tests
Co-authored-by: chriseth <chris@ethereum.org>
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
|
2020-06-23 17:29:16 +02:00 |
|
chriseth
|
71cb7551f4
|
Merge pull request #9208 from ethereum/develop
Merge develop into breaking.
|
2020-06-16 16:11:41 +02:00 |
|
chriseth
|
8155ad2187
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-06-15 17:11:41 +02:00 |
|
Bhargava Shastry
|
9264135bef
|
Add tests to validate clearing dirty bits via inline assembly operations
|
2020-06-12 11:32:15 +02:00 |
|
chriseth
|
0689cda19a
|
Merge pull request #9116 from ethereum/solYulCleanupFromStorageReference
New test for getters.
|
2020-06-11 14:08:10 +02:00 |
|
chriseth
|
012ba9537b
|
Merge pull request #9184 from ethereum/fixUsingForStorage
Fix using for with explicit reference types.
|
2020-06-11 14:00:28 +02:00 |
|
chriseth
|
5c71b3fbb0
|
Merge pull request #9173 from ethereum/fixBoundCalldata
Fix bound functions with calldata parameters.
|
2020-06-11 13:31:30 +02:00 |
|
chriseth
|
549c90612c
|
Fix using for with explicit reference types.
|
2020-06-11 13:04:41 +02:00 |
|
Daniel Kirchner
|
73cd009b89
|
Fix struct allocation in Sol->Yul.
|
2020-06-11 12:16:45 +02:00 |
|
Daniel Kirchner
|
90b66a7362
|
Fix struct member access for memory and implement for calldata.
|
2020-06-10 20:01:30 +02:00 |
|
chriseth
|
baabe65a84
|
Fix bound functions with calldata parameters.
|
2020-06-10 17:37:59 +02:00 |
|
Djordje Mijovic
|
e73fe17277
|
Fixing ICE on calling externally a function that returns calldata pointers
Co-authored-by: chriseth <chris@ethereum.org>
|
2020-06-10 14:41:45 +02:00 |
|
chriseth
|
6b3171c38b
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-06-10 11:30:50 +02:00 |
|
chriseth
|
81f54a170b
|
Cleanup from storage.
|
2020-06-09 14:57:04 +02:00 |
|
chriseth
|
2724ce9511
|
Index access to fixed bytes and byte arrays.
|
2020-06-09 10:50:28 +02:00 |
|
chriseth
|
259292c884
|
Merge pull request #9118 from ethereum/develop
Merge develop into breaking.
|
2020-06-04 10:18:46 +02:00 |
|
chriseth
|
010a2246c7
|
More tests for getters.
|
2020-06-03 21:47:24 +02:00 |
|
chriseth
|
a6c773bd96
|
Fix type inversion for shift and exp operators.
|
2020-06-03 13:46:26 +02:00 |
|
chriseth
|
e7f3c042b6
|
Struct member access for storage and memory.
|
2020-06-03 10:37:39 +02:00 |
|
chriseth
|
37e8d78cff
|
[Sol->Yul] Implement getters.
|
2020-06-03 10:33:37 +02:00 |
|
chriseth
|
894478ff8c
|
Merge pull request #9038 from ethereum/develop
Merge develop into breaking.
|
2020-05-27 15:24:27 +02:00 |
|
chriseth
|
0aa3fb5026
|
Merge pull request #9014 from ethereum/sol-yul-abidecode
[Sol - Yul] Add support for ABIDecode.
|
2020-05-27 11:44:13 +02:00 |
|
Kamil Śliwak
|
f574d8ec3a
|
Don't assume that an expression cannot be associated with a function declaration
|
2020-05-27 00:05:18 +02:00 |
|
Alexander Arlt
|
118cb13476
|
[Sol - Yul] Add support for ABIDecode.
|
2020-05-26 13:30:37 -05:00 |
|
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
|
99194b1450
|
New tests.
|
2020-05-26 10:51:13 +02:00 |
|
Djordje Mijovic
|
4c3e78d046
|
Disallowing shifts by signed types
|
2020-05-26 10:18:21 +02:00 |
|
chriseth
|
69a028b49c
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-05-26 10:11:23 +02:00 |
|
Kamil Śliwak
|
4a2ce57bed
|
Add support for bound function calls in IR generator
|
2020-05-20 21:10:20 +02:00 |
|
chriseth
|
74b9b094c0
|
Merge remote-tracking branch 'origin/develop' into HEAD
|
2020-05-20 17:22:47 +02:00 |
|
chriseth
|
3c71412a47
|
Merge pull request #8988 from ethereum/isoltest_default_formatting
[isoltest] Improve parameter formatting.
|
2020-05-20 08:05:33 +02:00 |
|
Alexander Arlt
|
410986e00f
|
[isoltest] Improve parameter formatting.
|
2020-05-19 19:13:39 -05:00 |
|
chriseth
|
d422a406ba
|
Merge pull request #8983 from ethereum/develop
Merge develop into breaking.
|
2020-05-19 18:05:28 +02:00 |
|
Kamil Śliwak
|
16e80b7bcd
|
Test case for internal dispatch with functions that have arguments that take up multiple slots
|
2020-05-19 18:02:14 +02:00 |
|
Djordje Mijovic
|
bd64b971b9
|
Fixing tests on breaking branch.
|
2020-05-19 17:42:19 +02:00 |
|
Djordje Mijovic
|
d235d0c166
|
[Sol->Yul] Implementing Byte array push() and pop()
|
2020-05-19 14:47:00 +02:00 |
|
chriseth
|
7ef114db9a
|
Merge pull request #8841 from ethereum/sol_yul_ripemd160_ecrecover
[Sol - Yul] Add support for ripemd160 & ecrecover.
|
2020-05-14 18:43:55 +02:00 |
|
Alexander Arlt
|
91e9d54c71
|
[Sol - Yul] Add support for ripemd160 & ecrecover.
|
2020-05-14 10:44:39 -05:00 |
|
chriseth
|
993a7941b1
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-05-14 17:24:40 +02:00 |
|
chriseth
|
257bc6a416
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-05-14 13:04:46 +02:00 |
|
Djordje Mijovic
|
472fb21ee0
|
[Sol->Yul] Enabling new bytes(n)
|
2020-05-14 12:55:14 +02:00 |
|
chriseth
|
1700bdc4ad
|
Merge pull request #8925 from ethereum/abiEncodeCalldataSlice
Allow abi encoding array slices without casting.
|
2020-05-13 18:55:16 +02:00 |
|
Daniel Kirchner
|
97296d8622
|
Allow ABI encoding for array slices without explicit casts.
|
2020-05-13 18:20:07 +02:00 |
|
Mathias Baumann
|
820fdd9bf7
|
Escape backslashes when formatting
|
2020-05-13 17:08:37 +02:00 |
|
chriseth
|
0be56a0abf
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-05-12 17:48:53 +02:00 |
|
Daniel Kirchner
|
c2f5a66a79
|
Implement .creationCode for Sol->Yul.
|
2020-05-11 18:51:51 +02:00 |
|
Daniel Kirchner
|
3fbde6e782
|
Merge pull request #8856 from ethereum/implicitConstructorCallvalueCheck
Implicit constructor callvalue check
|
2020-05-11 18:50:36 +02:00 |
|
Daniel Kirchner
|
79b217dfb3
|
Callvalue checks for implicit constructors.
|
2020-05-11 16:14:34 +02:00 |
|
chriseth
|
c0bf529236
|
Support bare calls.
|
2020-05-11 15:11:46 +02:00 |
|
chriseth
|
0248303c15
|
Merge pull request #8872 from ethereum/int-min-max
implemented type(X).min and type(X).max for all integer types
|
2020-05-11 15:08:19 +02:00 |
|
Harikrishnan Mulackal
|
e4e200f29f
|
Changelog and tests
|
2020-05-11 15:29:05 +05:30 |
|
Harikrishnan Mulackal
|
e54c4eecfc
|
implemented type(X).min and type(X).max for all integer types
|
2020-05-11 14:51:13 +05:30 |
|
chriseth
|
a0e291bd06
|
Implement Yul IR generation for abi.encode*
|
2020-05-07 19:39:15 +02:00 |
|
chriseth
|
f38cf85482
|
Use vector of slots.
|
2020-05-07 17:54:04 +02:00 |
|
chriseth
|
e986fde0c1
|
Introduce non-reversed version of tupleEncoder.
|
2020-05-07 15:08:09 +02:00 |
|
Alex Beregszaszi
|
327c75bc1b
|
IR generation for shifts
|
2020-05-06 19:14:23 +02:00 |
|
chriseth
|
76275cf34a
|
Merge pull request #8824 from ethereum/solYulDirtyMemory
Fix accessing memory reference types in yul codegen and clean up on memory reads.
|
2020-05-06 16:17:19 +02:00 |
|
Daniel Kirchner
|
234ffcf278
|
Merge pull request #8718 from ethereum/irConstants
IR generation for constants.
|
2020-05-06 16:05:17 +02:00 |
|
Daniel Kirchner
|
c25a3eba14
|
Fix accessing memory reference types in yul codegen and clean up on memory reads.
|
2020-05-06 11:34:11 +02:00 |
|
Daniel Kirchner
|
b580106c80
|
Yul parser hack and more yul tests.
|
2020-05-05 17:23:41 +02:00 |
|
chriseth
|
02c20698c9
|
IR generation for constants.
|
2020-05-05 17:07:55 +02:00 |
|
Daniel Kirchner
|
28d25afab1
|
Cleanup tests for Sol->Yul arithmetic and comparison.
|
2020-05-05 13:38:31 +02:00 |
|
Djordje Mijovic
|
e8f6f63e77
|
[Sol2Yul] Adding support for builtin revert(string)
|
2020-05-05 07:05:39 +02:00 |
|
Djordje Mijovic
|
8b7f87eed5
|
[isoltest] Enforcing compileViaYul to be set if test can pass via yul
|
2020-05-05 00:38:13 +02:00 |
|
chriseth
|
ecbf216354
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-05-04 18:46:45 +02:00 |
|
chriseth
|
1aef9c7d20
|
Merge pull request #8777 from ethereum/sol_yul_simplefunctions
[Sol - Yul] Add some built-in functions.
|
2020-05-04 16:07:10 +02:00 |
|
chriseth
|
51ccb1519f
|
Yul codegen for immutables.
|
2020-05-04 15:00:50 +02:00 |
|
Alexander Arlt
|
151e637336
|
[Sol - Yul] Add some built-in functions.
- simplifications for GasLeft, Selfdestruct and BlockHash.
- add support for addmod & mulmod.
|
2020-04-30 14:10:09 -05:00 |
|
Jason Cobb
|
8973732b74
|
Compare categories instead of types in ContractCompiler(740)
|
2020-04-28 13:13:45 -04:00 |
|
chriseth
|
1fe55370f4
|
Merge remote-tracking branch 'origin/develop' into HEAD
|
2020-04-28 13:02:06 +02:00 |
|
hrkrshnn
|
bd0b06e8db
|
Tests, Docs and Changelog
|
2020-04-28 16:03:52 +05:30 |
|
Djordje Mijovic
|
f3f729549d
|
[Sol->Yul] Enabling creation function call
|
2020-04-27 16:15:57 +02:00 |
|
chriseth
|
dda883b585
|
IR generation for sha256.
|
2020-04-27 11:10:20 +02:00 |
|
Kamil Śliwak
|
d3da878200
|
Enable internal library calls
|
2020-04-24 15:00:51 +02:00 |
|
Kamil Śliwak
|
56a85d6cb3
|
IRGeneratorForStatements: Handle internal calls to functions from specific base contracts as static calls rather than calls via pointers
|
2020-04-24 15:00:16 +02:00 |
|
chriseth
|
2b39f3b988
|
Merge pull request #8766 from ethereum/sol_yul_gasleft
[Sol - Yul] Add support for built-in gasleft().
|
2020-04-24 14:24:01 +02:00 |
|
Alexander Arlt
|
aafa4583df
|
[Sol - Yul] Add support for built-in gasleft().
|
2020-04-23 17:14:03 -05:00 |
|
Kamil Śliwak
|
e65a5a562e
|
IRGenerationContext::internalDispatch(): Fix code generated when the function called via pointer does not return anything
|
2020-04-23 21:16:41 +02:00 |
|
hrkrshnn
|
48ff9fd4d6
|
Tests, Changelog and updated grammar
|
2020-04-23 17:27:37 +05:30 |
|
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 |
|
chriseth
|
a371910674
|
Merge pull request #8642 from ethereum/interfaceid
Add support for interfaceId.
|
2020-04-23 12:24:49 +02:00 |
|
chriseth
|
6728e3ef94
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-04-22 17:21:32 +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 |
|
chriseth
|
1d8e742296
|
Merge pull request #8684 from ethereum/yulForSelector
Yul codegen for `.selector`.
|
2020-04-20 16:32:11 +02:00 |
|
Kamil Śliwak
|
c7947c1af6
|
Implement lazy function generation using function generation queue
|
2020-04-17 13:28:07 +02:00 |
|
Alexander Arlt
|
3754a86ab2
|
Add support for interfaceID.
|
2020-04-16 12:17:40 -05:00 |
|
chriseth
|
f271dfa2e2
|
Yul codegen for .selector .
|
2020-04-16 13:42:58 +02:00 |
|
chriseth
|
06adbc2c59
|
Implement bit operations.
|
2020-04-16 00:33:45 +02:00 |
|
Daniel Kirchner
|
0c5c93f3c2
|
Fix tuple assignments for empty tuples in Yul IR.
|
2020-04-15 11:10:52 +02:00 |
|
Christian Parpart
|
d00d3c45b1
|
[Sol2Yul] Implements codegen part for try/catch statements.
|
2020-04-14 18:42:37 +02:00 |
|
a3d4
|
aba0b2957c
|
Fix tuple assignments with multi-slot components.
|
2020-04-07 18:39:25 +02:00 |
|
chriseth
|
51883958ab
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-04-07 11:14:28 +02:00 |
|
Daniel Kirchner
|
d68c526eaa
|
Disallow external function pointers as immutables.
|
2020-04-03 11:56:51 +02:00 |
|
chriseth
|
d7a39c86ce
|
Accessors for immutable variables.
|
2020-04-02 19:09:54 +02:00 |
|
Leonardo Alt
|
39ff0deb05
|
Zero initialize memory arrays
|
2020-04-02 15:55:18 +02:00 |
|
Daniel Kirchner
|
77ea896b68
|
Properly handle assignments of immutables at declaration.
|
2020-04-02 08:35:22 +02:00 |
|
Daniel Kirchner
|
fe9f8d520c
|
Restrict size for dynamic memory array creation.
|
2020-04-01 17:25:09 +02:00 |
|
chriseth
|
b83d82ab75
|
Merge pull request #8550 from a3d4/fix-8450-typechecker-compiler-error
Fix a couple of internal compiler errors when assigning nested tuples
|
2020-03-31 22:21:58 +02:00 |
|
a3d4
|
c002cae691
|
Fix #8450. Prevented internal compiler errors when assigning nested tuples.
|
2020-03-31 03:25:26 +02:00 |
|
Djordje Mijovic
|
89d5ecdd24
|
[Sol2Yul] Adding support for constructor with parameters
|
2020-03-27 01:19:11 +01:00 |
|
chriseth
|
165f7bf60f
|
Move files.
|
2020-03-26 17:47:36 +01:00 |
|
Alexander Arlt
|
67e9776418
|
Extract 45 tests from SolidityEndToEndTest.cpp
|
2020-03-26 17:39:12 +01:00 |
|
Daniel Kirchner
|
e255c15227
|
Tests.
|
2020-03-24 16:45:31 +01:00 |
|
Daniel Kirchner
|
04d8ad2ae1
|
Legacy codegeneration for immutable state variables.
|
2020-03-24 16:45:25 +01:00 |
|
chriseth
|
7d68f9f6c3
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-03-24 13:35:41 +01:00 |
|
Daniel Kirchner
|
fe659ceb41
|
Anything outside storage is always a pointer.
|
2020-03-23 15:34:10 +01:00 |
|
Leonardo Alt
|
0fcb1427c9
|
Fix Yul codegen when dynamic array is used as rhs of assignment
|
2020-03-20 17:52:51 +01:00 |
|
chriseth
|
d55bbd4aa5
|
Merge pull request #8508 from a3d4/again-refactor-testcase-classes
More refactoring of TestCase classes
|
2020-03-19 23:05:32 +01:00 |
|
chriseth
|
f25157a5f8
|
Sort tests.
|
2020-03-19 14:42:25 +01:00 |
|
a3d4
|
f4d9f6772f
|
Unified use of settings. Removed a couple of unused functions.
|
2020-03-19 14:02:39 +01:00 |
|
Alexander Arlt
|
23d00b5ca3
|
Extracted 292 tests from SolidityEndToEndTest.cpp
|
2020-03-18 11:56:43 -05:00 |
|
Djordje Mijovic
|
96d278b101
|
[Sol->Yul] Adding slicing for call data arrays
|
2020-03-13 13:40:38 +01:00 |
|
Daniel Kirchner
|
bdd8045db5
|
Merge pull request #8183 from ethereum/functionOptionsYulIR
[YulIR] Function call options for Yul IR
|
2020-03-12 10:49:51 +01:00 |
|