534 Commits
Author SHA1 Message Date
chriseth d079cdbfaa Merge pull request #6362 from ethereum/fixABIEncoderV2StorageRead
Fix abi encoder v2 storage read
2019-03-26 10:23:08 +01:00
Alex Beregszaszi d2185bf529 Remove obsolete identifer for the identity precompile 2019-03-25 20:57:59 +00:00
chriseth 6b69c31703 Fix ABIEncoderV2 array overwrite bug. 2019-03-25 18:28:43 +01:00
chriseth 68d4a85575 Properly read and clean value types read from storage. 2019-03-25 18:28:43 +01:00
Daniel Kirchner 66d6711364 ABIFunctions: Split out a function for generating a comma separated list of variable names. 2019-03-25 10:58:18 +01:00
chriseth 38cbf8d230 Pass "optimize stack allocation" flag down to the stack compressor. 2019-03-20 15:03:27 +01:00
chriseth 7c524f794f Also output optimized yul code if requested. 2019-03-19 17:24:36 +01:00
chriseth 6d1ed93247 Use stack optimizations. 2019-03-14 15:34:23 +01:00
chriseth 2e7794d8a6 Defensively pad memory for `type(C).name` to multiples of 32. 2019-03-13 18:51:32 +01:00
Daniel Kirchner 66fc7ffab2 Allow dynamically encoded calldata structs with ABIEncoderV2. 2019-03-11 16:40:13 +01:00
chriseth 4d8c57006b Merge pull request #6195 from ethereum/extractYulUtils
[REF] Extract utility functions from ABI encoder.
2019-03-08 00:51:58 +01:00
Daniel Kirchner f7c6eda2c3 Allow calldata arrays with dynamically encoded base type. 2019-03-06 18:04:12 +01:00
chriseth d515d77bfe Extract utility functions from ABI encoder. 2019-03-05 22:13:55 +01:00
chriseth a27ef3489c Allow encoding and decoding functions with empty type list. 2019-03-05 15:55:50 +01:00
Alex Beregszaszi a96cc6e0e8 Add allocateMemory helper with value known at compile time 2019-03-04 17:46:42 +01:00
Alex Beregszaszi bd51589f1a Use "if" instead of "switch" in codegen for the deployment time address of a library 2019-03-04 15:16:58 +01:00
chriseth 2e0ea16a0f Merge pull request #5959 from ethereum/optimiser2
Introduce global optimiser settings.
2019-03-04 12:54:59 +01:00
chriseth 6a32f6e1ac Properly assign reference to context. 2019-03-04 12:00:47 +01:00
chriseth 851dd635eb Remove defaults in constructor arguments. 2019-03-04 11:41:52 +01:00
chriseth 83d1382e78 Take yul optimizer setting into account. 2019-03-04 11:40:28 +01:00
chriseth 1ff562d28a Provide full optimiser settings to ContractCompiler. 2019-03-04 11:40:28 +01:00
Alex Beregszaszi cf5c13f9c7 Introduce global optimiser settings. 2019-03-04 11:40:28 +01:00
Mathias Baumann e4a52aa2f6 Allow dynamic types in public mappings 2019-02-26 15:48:54 +01:00
Alex Beregszaszi d2f493268b Provide access to the name of contracts. 2019-02-26 14:07:03 +00:00
Alex Beregszaszi 358ccbe372 Properly issue unimplemented assertion on FixedPointType in type conversion 2019-02-25 21:21:33 +00:00
Leonardo Alt 2405b2151a EVMVersion in langutil namespace instead of solidity 2019-02-25 15:29:57 +01:00
chriseth 7f5b335b47 Make EVM version part of EVM dialect. 2019-02-21 21:59:46 +01:00
Mathias Baumann c65a96d189 Small documentation fixes in the code 2019-02-21 12:54:39 +01:00
chriseth 05541e5adb Fixed internal error related to ecrecover and ABIEncoderV2. 2019-02-19 14:17:03 +01:00
chriseth d5791fef41 Fix combination of delegatecall and ABIEncoderV2.
We can set the flag to false for bare delegatecall, because we always
send a memory string and never a storage reference.
2019-02-19 13:57:03 +01:00
chriseth c690f679cb Allow cleanup for mappings (do nothing). 2019-02-18 18:50:22 +01:00
Daniel Kirchner 0408130338 Merge pull request #6003 from ethereum/moreStyleChecks
Even more style checks.
2019-02-15 11:52:32 +01:00
Daniel Kirchner 809b9a95f9 Even more style checks. 2019-02-14 11:53:00 +01:00
Daniel Kirchner 8ca6715e18 More style checks. 2019-02-14 11:41:20 +01:00
Daniel Kirchner 32190dac48 Add stride helpers to ArrayType. 2019-02-14 10:51:39 +01:00
chriseth 1a823f0bf8 Fix tabs/spaces. 2019-02-13 17:05:48 +01:00
chriseth 17ea467e5b Fix style of "const". 2019-02-13 16:34:53 +01:00
chriseth 02373c2225 Adjust uses of AsmCodeGen. 2019-02-13 11:35:49 +01:00
chriseth 1ff6f2c71c Move AsmCodeGen. 2019-02-13 11:20:15 +01:00
Daniel Kirchner 0e4912a203 ABIEncoderV2: Implement calldata structs without dynamically encoded members. 2019-02-11 15:46:58 +01:00
chriseth a8d0ef4bad Allow indexed structs in events with encoder v2. 2019-02-11 11:37:47 +01:00
chriseth a08f4f43fa Add packed encoder V2. 2019-02-11 11:37:47 +01:00
chriseth 1b9d30f05f Packed encoding. 2019-02-11 11:37:47 +01:00
chriseth fc18258250 Remove type check that is covered by assertions. 2019-02-07 12:02:15 +01:00
chriseth 49f8fa4cfe Extract storing length to its own function. 2019-02-06 14:03:49 +01:00
chriseth 77baf6caf7 Compilability checker. 2019-02-04 17:32:05 +01:00
chriseth cd8cf7745b Merge pull request #5888 from ethereum/betterStackErrorMessages
Better error message for out of stack in assembly.
2019-02-04 15:26:55 +01:00
chriseth 17a1e7aed5 Better error message for out of stack in assembly. 2019-01-30 12:24:10 +01:00
chriseth 35483422f3 Pad code to multiple of 32 bytes. 2019-01-30 11:31:28 +01:00
chriseth 64312584dc Do not provide access to external assembly variables from within functions. 2019-01-28 14:42:38 +01:00