Commit Graph

133 Commits

Author SHA1 Message Date
chriseth
1f3239d097 Simplify split parameter. 2020-11-03 14:34:18 +01:00
chriseth
fea3f848f9 Prepare store for external function types. 2020-11-03 14:34:18 +01:00
chriseth
c16b535804 Validate external functions from calldata. 2020-11-03 13:28:08 +01:00
chriseth
22b31054b6
Merge pull request #10174 from ethereum/storeInternalFunctions
Implement internal functions in storage.
2020-11-03 09:56:12 +01:00
chriseth
129b095b09 Implement internal functions in storage. 2020-11-02 23:10:03 +01:00
chriseth
49bd3f2af4 Convert properly during storing. 2020-11-02 21:15:34 +01:00
chriseth
1066af3b98 Copy byte array to storage. 2020-10-29 18:53:15 +01:00
chriseth
14d7ca49c0 Rename function. 2020-10-29 18:53:15 +01:00
Djordje Mijovic
28f92064b9 [Sol->Yul] Fixing ice when copying struct that contains nested array to storage 2020-10-28 09:28:40 +01:00
chriseth
53d6721e47 Extract mask bytes function. 2020-10-20 17:36:46 +02:00
Djordje Mijovic
5f0b8dd716 [Sol->Yul] Changing yul unimplemented test as delete bytes is implemented now. 2020-10-15 22:05:40 +02:00
Djordje Mijovic
4a66723ff9 [Sol->Yul] Implementing resizing of dynamic byte arrays
Co-authored-by: chriseth <chris@ethereum.org>
2020-10-15 22:05:35 +02:00
Djordje Mijovic
6f7947cfa5 [Sol->Yul] Optimizing delete struct.
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
2020-10-14 13:35:15 +02:00
chriseth
56d6855222
Merge pull request #9738 from ethereum/arrayCopyingSol2Yul
[Sol->Yul] Implementing copying of arrays to storage
2020-10-14 12:22:09 +02:00
Djordje Mijovic
850a94bdc9 [Sol->Yul] Implementing arrays copying to storage.
Co-authored-by: chriseth <chris@ethereum.org>
2020-10-13 20:31:08 +02:00
chriseth
abfa136afb
Merge pull request #10012 from ethereum/extractSelectorFunction
Extract function to compute function selector from signature.
2020-10-12 20:32:05 +02:00
chriseth
4b342a7cad
Merge pull request #9816 from ethereum/exp-base-literals
[Sol->Yul] Optimization for exponentiation when the base is a literal
2020-10-12 19:34:38 +02:00
Harikrishnan Mulackal
418aa01c5b Optimization for exponentiation when the base is a literal 2020-10-12 18:54:58 +02:00
chriseth
cb0d1134b7 Extract function to compute function selector from signature. 2020-10-12 17:57:34 +02:00
chriseth
8b96d17cb5 Revert on failing read from calldata. 2020-10-08 19:43:16 +02:00
chriseth
f8d5c4db36
Merge pull request #9843 from ethereum/deleteStructSol2Yul
[Sol->Yul] Implementing delete struct
2020-10-08 19:08:40 +02:00
Djordje Mijovic
ad8d840ee7 [Sol->Yul] Implementing conversion of struct to struct pointer.
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
2020-10-08 16:37:57 +02:00
Djordje Mijovic
700390a68b [Sol->Yul] Implementing deleting storage structs 2020-10-08 15:27:33 +02:00
chriseth
fd6196af16 Copying of arrays from storage to memory. 2020-10-08 15:16:13 +02:00
Djordje Mijovic
818afcbec2 [Sol->Yul] Implementing push for nested storage arrays and storage arrays of structs. 2020-10-06 13:06:40 +02:00
Djordje Mijovic
aa23ebc8e6 [Sol->Yul] Implementing array resizing for packed array types. 2020-10-01 10:25:00 +02:00
chriseth
1e3596ec71 Use invalid opcode on internal errors. 2020-09-24 16:02:35 +02:00
chriseth
e696c4eafd Extract common loop. 2020-09-23 16:14:24 +02:00
chriseth
55e6a92692 Add specialization for small numbers. 2020-09-23 16:14:24 +02:00
Djordje Mijovic
ec6d21cde2 [Sol->Yul] Fixing storage array index access 2020-09-08 16:02:56 +02:00
Djordje Mijovic
1fab5b79fb Refactoring signature for updateStorageValueFunction 2020-09-02 12:28:53 +02:00
Djordje Mijovic
15163b2270 Refactoring readFromStorage util frunctions
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
2020-09-02 12:28:53 +02:00
Djordje Mijovic
23f6369a46 Implementing struct copying from calldata to storage 2020-09-02 12:28:53 +02:00
Djordje Mijovic
762e3f3cee [Sol->Yul] Implementing struct copying from calldata to storage 2020-09-02 12:28:53 +02:00
Djordje Mijovic
381784dd89 [Sol->Yul] Implementing struct copying from storage to memory 2020-09-02 12:28:53 +02:00
Djordje Mijovic
b89c863e11 [Sol->Yul] Implementing struct copying from memory to storage 2020-09-02 12:28:53 +02:00
chriseth
c34e349572 Implement checked exponentiation. 2020-08-18 12:42:53 +02: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
Djordje Mijovic
96258c7e75 [Sol->Yul] Implementing bytes copying from calldata to memory. 2020-07-27 15:14:26 +02:00
chriseth
1b810d4a0a Remove handling of signed shift amounts. 2020-07-23 16:45:16 +02:00
chriseth
50a54fa8aa Implement inline arrays. 2020-07-20 17:06:32 +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
Mathias Baumann
50373ac1b0 Yul: Implement memory struct allocation 2020-07-02 16:37:20 +02:00
Daniel Kirchner
73cd009b89 Fix struct allocation in Sol->Yul. 2020-06-11 12:16:45 +02:00
chriseth
37e8d78cff [Sol->Yul] Implement getters. 2020-06-03 10:33:37 +02:00
chriseth
e6b399c86e
Merge pull request #8942 from ethereum/calldataVariables
Calldata variables.
2020-05-26 11:34:40 +02:00
chriseth
499cb0526f Calldata variables. 2020-05-26 10:51:13 +02:00
chriseth
76d27bcfaa Fix assumption for member not in memory. 2020-05-26 10:35:04 +02:00
Djordje Mijovic
d235d0c166 [Sol->Yul] Implementing Byte array push() and pop() 2020-05-19 14:47:00 +02:00
Djordje Mijovic
472fb21ee0 [Sol->Yul] Enabling new bytes(n) 2020-05-14 12:55:14 +02:00