Commit Graph
5329 Commits
Author SHA1 Message Date
Daniel Kirchner 28d25afab1 Cleanup tests for Sol->Yul arithmetic and comparison. 2020-05-05 13:38:31 +02:00
Harikrishnan Mulackal dd7d63925a Merge pull request #8806 from ethereum/natspec-constructor
[BREAKING] Natspec constructor and functions have consistent userdoc
2020-05-05 15:47:34 +05:30
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 3738cff6e6 Test updates. 2020-05-04 15:00:50 +02:00
chriseth 51ccb1519f Yul codegen for immutables. 2020-05-04 15:00:50 +02:00
Mathias Baumann debcc8c056 Add setimmutable and loadimmutable to dialect. 2020-05-04 15:00:50 +02:00
hrkrshnn aa65e9423c Uniform output in functions and constructor NatSpec 2020-05-04 12:39:43 +05:30
Alexander Arlt a9f4d14010 [Sol - Yul] Add support for send(..) & transfer(..) 2020-05-01 08:32:51 -05: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
chriseth 602b29cba7 Merge pull request #8796 from a3d4/fix-8760-typechecker-compiler-error
[Type Checker] Fix internal error when applying unary operators to tuples with empty components
2020-04-29 10:14:15 +02:00
a3d4 3bd15655cb Type Checker: Fix internal error when applying unary operators to tuples with empty components 2020-04-29 02:18:48 +02:00
chriseth cc3992452f Merge pull request #8791 from random-internet-cat/fix-8406
Fix broken assertion in ContractCompiler
2020-04-28 19:46:30 +02:00
Jason Cobb 8973732b74 Compare categories instead of types in ContractCompiler(740) 2020-04-28 13:13:45 -04:00
yoni206 4327434d07 Adding bit-vector NOT operation to the opcodes. 2020-04-28 09:43:31 -07:00
chriseth 55e34407d3 Merge pull request #8726 from ethereum/fix-8724
Yul proto spec: Add multiple variable declaration statement
2020-04-28 13:13:07 +02:00
chriseth 1fe55370f4 Merge remote-tracking branch 'origin/develop' into HEAD 2020-04-28 13:02:06 +02:00
hrkrshnn a58b5b2bbe Changed repo to upstream; branches to latest 2020-04-28 16:03:52 +05:30
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
Alex Beregszaszi 99aa821410 Merge pull request #8720 from ethereum/irSha256
IR generation for sha256.
2020-04-27 13:44:26 +01:00
chriseth 3828adbbbd Merge pull request #8761 from ethereum/conditonalStrings
Conditional strings for Whiskers.
2020-04-27 14:07:30 +02:00
Bhargava ShastryandLeonardo 5113af1df0 Update test/tools/ossfuzz/protoToYul.h
Co-Authored-By: Leonardo <leo@ethereum.org>
2020-04-27 14:01:11 +02:00
Bhargava Shastry 62e5ccec90 Minor code factoring to clarify for init scope extension 2020-04-27 14:01:11 +02:00
Bhargava Shastry 7280ed716a Yul proto spec: Add multiple variable declaration statement 2020-04-27 14:01:11 +02:00
chriseth 5b92dedeed Merge pull request #8753 from a3d4/fix-sourcereferenceformathuman-leftpad
Fix leftpad in SourceReferenceFormatterHuman
2020-04-27 11:22:14 +02:00
chriseth dda883b585 IR generation for sha256. 2020-04-27 11:10:20 +02:00
chriseth aa8107f45a Conditional strings for Whiskers. 2020-04-27 11:07:56 +02:00
chriseth 61b1369fc2 Merge pull request #8701 from ethereum/solc-yul-chromosome
solc option for selecting yul optimisations
2020-04-27 10:44:14 +02:00
Alexander Arlt 66edaf43f4 [Sol - Yul] Add support for built-in logN(). 2020-04-25 11:10:28 -05:00
Alexander Arlt 2fa26f4e92 [Sol - Yul] Add support for built-in selfdestruct(..). 2020-04-24 17:03:41 -05:00
Kamil Śliwak c8b612536f Add yulDetails.optimizerSteps to the standard JSON interface 2020-04-24 17:30:56 +02:00
Kamil Śliwak 35cc64e33d Add --yul-optimizations option to the command-line interface 2020-04-24 17:30:56 +02:00
Kamil Śliwak c41a832f65 Move the default optimisation steps from OptimiserSuite to OptimiserSettings
- Now it's a mandatory parameter in OptimiserSuite::run()
2020-04-24 17:30:56 +02:00
chriseth dd7aebe7f1 Merge pull request #8769 from ethereum/fix-cmdlinetests-not-removing-tmp-all-files
Fix cmdlineTests.sh not removing all tmp.XXXXXX files
2020-04-24 15:35:17 +02:00
Kamil Śliwak 172b6c245f cmdlineTests.sh: Fix the script not removing all temporary files it creates in /tmp
- The script was leaving hundreds of loose `tmp.XXXXXX` and `tmp.XXXXXX.bak` files in `/tmp` after each run
- There's a trap handler that removes them but it's being registered multiple times in a loop and only the last one actually runs when the script exits. It's still useful because it removes the remaining files from the most recent iteration but on its own it's not enough to clean up everything.
2020-04-24 15:09:26 +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
Leonardo Alt 059d0bdebb Revert "Use Spacer option to improve performance of constant arrays"
This reverts commit 92059fa848.
2020-04-24 11:55:58 +02:00
a3d4 8717c073a6 Fix leftpad in SourceReferenceFormatterHuman 2020-04-24 00:34:24 +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
chriseth d136e7dc95 Rules for optimizing idempotency for bitwise operations. 2020-04-23 14:21:00 +02:00
chriseth ed2a42610b Merge pull request #8730 from ethereum/reduceMultipleConsecutiveLines
Yul formatting: Reduce multiple consecutive empty lines to a single one.
2020-04-23 14:11:09 +02:00
chriseth d25b16ed55 Merge pull request #8737 from ethereum/yulProtoDisallowEmpty
Disallow statements containing empty blocks e.g., empty if, for etc.
2020-04-23 14:10:36 +02:00
hrkrshnn 48ff9fd4d6 Tests, Changelog and updated grammar 2020-04-23 17:27:37 +05:30
hrkrshnn e2e32d372f virtual modifiers (in Abstract contracts) allow empty bodies 2020-04-23 17:26:59 +05:30