399 Commits
Author SHA1 Message Date
nishant-sachdeva e2711b7fab Corresponding code in the .cpp file has been commented instead of begin removed pending preliminary reviews
Code generators needed fixing of the cleanup process during typecasting of bytes and integers
2022-02-01 16:07:55 +05:30
hrkrshnn 0fe5811459 Fixed a ICE on calldata to struct member copy 2022-01-31 17:26:11 +01:00
nishant-sachdeva dec511aad8 Corresponding code in the .cpp file has been commented instead of begin removed pending preliminary reviews
Code generators needed fixing of the cleanup process during typecasting of bytes and integers
2022-01-28 19:56:15 +05:30
Marenz 6f4709d383 Remove empty assert messages 2022-01-20 15:11:26 +01:00
nishant-sachdeva a0d6c11860 Equality operator allowed for external function types 2022-01-19 15:20:31 +05:30
chriseth 4c838d9cf5 abi.encodeCall for declarations. 2021-12-29 12:26:04 +01:00
Marenz 7a96953e78 Implement typechecked abi.encodeCall() 2021-12-16 17:35:58 +01:00
chriseth a1aa9d2d90 Skip extcodesize check if return data is expected. 2021-11-08 14:58:09 +01:00
Daniel Kirchner 4229369180 Compatibility with StackCompressor and StackLimitEvader. 2021-11-03 12:39:55 +01:00
chriseth 8e208f23cb Fix assignment of return variables from modifiers. 2021-11-01 14:14:50 +01:00
chriseth 49d7b78466 Merge pull request #12123 from ethereum/empty-switch-12068
CodeGen: Only output switch when it has cases
2021-10-12 17:42:49 +02:00
Mathias Baumann 454860d1f5 CodeGen: Only output switch when it has cases 2021-10-12 17:40:31 +02:00
Kamil Śliwak bcfefc79d9 Pass DebugInfoSelection down to the code handling assembly printing 2021-10-11 20:34:48 +02:00
Kamil Śliwak f7c4ed849d Handle DebugInfoSelection in the code printing Yul and EVM assembly 2021-10-11 20:34:48 +02:00
chriseth ecfcca1a27 Merge pull request #12016 from ethereum/external-fp-10358
Add ``.address`` and ``.selector`` in inside assembly for external function pointers
2021-10-05 14:48:58 +02:00
Marenz 98dd78362e Add `.address and .selector` in inside assembly for external function pointers 2021-10-04 18:05:57 +02:00
Kamil Śliwak 7f7107405f Try out the new assertion macro variants with less arguments 2021-10-04 12:05:00 +02:00
chriseth 1531863835 Split Common.h into Numeric.h. 2021-09-23 15:27:29 +02:00
chriseth 8b3748e5b7 Emit ast id. 2021-09-16 17:19:17 +02:00
chriseth a72f4f3993 Print AST ID. 2021-09-16 17:19:17 +02:00
Kamil Śliwak 14639efc5d Print code snippets next to source locations in IR output 2021-09-14 12:09:59 +02:00
Kamil Śliwak 37f681c430 Deduplicate code for printing source locations 2021-09-14 11:46:57 +02:00
Harikrishnan Mulackal 8a37f56e98 Merge pull request #11806 from ethereum/user-defined-types
User defined value types
2021-09-09 10:28:35 +02:00
hrkrshnn 54484e9795 Implemented codegen for UserDefinedValueType 2021-09-08 19:56:48 +02:00
chriseth 0b5671c885 Clarify C++ evaluation order. 2021-09-08 12:25:56 +02:00
chriseth 5093cff7ae Rename source location function. 2021-09-06 18:33:36 +02:00
chriseth f14b7598c7 Only list used source names. 2021-09-06 18:33:05 +02:00
chriseth 5d2931cba3 Refactor: Add helper for context. 2021-09-06 18:18:33 +02:00
chriseth 7f137d352a Merge pull request #11869 from ethereum/remodelUseSrc
Allow and require use-src to be repeated for each object.
2021-09-02 18:34:07 +02:00
chriseth 5caa15879b Allow and require use-src to be repeated for each object. 2021-09-02 11:29:42 +02:00
Marenz 2b28f87abf Add type().min/max for enums 2021-09-01 15:02:02 +02:00
Marenz 121fd40f74 Allow reading of immutables during construction time 2021-08-19 13:59:05 +02:00
hrkrshnn 95091f6b58 Implemented block.basefee in Solidilty and basefee() in Yul.
Also added basefee to Yul grammar.
2021-08-09 16:18:08 +02:00
Mathias Baumann 2ee6c7be64 Print @src and @use-src locations in AsmPrinter 2021-08-03 15:29:52 +02:00
Kamil Śliwak 6d6c9e6e4f Merge pull request #11660 from ethereum/docs-fix-badly-indented-lists-and-blocks
[Docs] Fix badly indented lists and blocks
2021-07-21 18:35:19 +02:00
Mathias Baumann bf204403d8 Add "@use-src" header for generated yul code 2021-07-15 14:26:01 +02:00
Marenz 57db4c82ba Fix: Use correct byte offset separation
":" instead of ","
2021-07-15 13:15:21 +02:00
Kamil Śliwak ce79e2515b docs: Fix badly indented lists 2021-07-15 10:13:30 +02:00
Kamil Śliwak 6753c8f624 Rename escapeAndQuoteYulString() back to escapeAndQuoteString() 2021-07-14 21:29:01 +02:00
chriseth f75b55071e Remove CharStream from SourceLocation. 2021-07-14 15:12:07 +02:00
Mathias Baumann c47d02066c Fix yul codegen bug when using binary negatition. 2021-06-29 17:41:03 +02:00
Kamil Śliwak 19fada966f Do not use \b, \v and \f escapes in string literals in generated Yul code 2021-06-28 14:13:47 +02:00
Alexander Arlt 8accf420ea [yul] Functions: Remove dependency on AST ID. 2021-06-23 16:15:25 +02:00
Djordje Mijovic 838f59fa5b Adding origin location notation to yul ir. 2021-06-21 18:48:20 +02:00
chriseth 0df8a38e55 Support metadata via IR. 2021-06-21 18:20:31 +02:00
Mathias Baumann d7d64c3db5 IR Codegen: Small refactoring & comment fixes 2021-06-14 13:35:53 +02:00
Mathias Baumann 6a0313c456 Unify function call resolve function used in Analysis & Yul CodeGen 2021-06-07 15:23:32 +02:00
Kamil Śliwak 3c7112ed2b Remove the assertion against functions bound to types for which should not be possible
- The list was wrong - we do support string and int literals
- The assertion was meant to guard against silently skipping over types for which there is no special handling. The current code handles everything in a generic way though and likely will not have to be adjusted for newly added types so the risk of that happening is low.
2021-06-02 13:59:42 +02:00
Djordje Mijovic 17eaa11657 [Sol->Yul] Adding assertion in order to give better error messages for fixed point types. 2021-05-31 15:54:37 +02:00
Alex Beregszaszi bf2c82adca Document the panic function of library deployment 2021-05-26 15:51:46 +01:00