solidity/libsolidity/codegen/ir
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
..
IRGenerationContext.cpp Yul codegen for immutables. 2020-05-04 15:00:50 +02:00
IRGenerationContext.h Yul codegen for immutables. 2020-05-04 15:00:50 +02:00
IRGenerator.cpp IR generation for constants. 2020-05-05 17:07:55 +02:00
IRGenerator.h [Sol->Yul] Enabling creation function call 2020-04-27 16:15:57 +02:00
IRGeneratorForStatements.cpp Merge pull request #8824 from ethereum/solYulDirtyMemory 2020-05-06 16:17:19 +02:00
IRGeneratorForStatements.h Merge pull request #8718 from ethereum/irConstants 2020-05-06 16:05:17 +02:00
IRLValue.h Yul codegen for immutables. 2020-05-04 15:00:50 +02:00
IRVariable.cpp Use IRVariable's in IR code generation and implement tuples. 2020-02-12 12:36:14 +01:00
IRVariable.h IRVariable: Fix improperly wrapped docstring 2020-04-24 15:00:16 +02:00
README.md Document differences between legacy Solidity and Solidity via Yul. 2019-07-11 17:48:06 +02:00

The Solidity to Yul Code Generator

This directory contains the new experimental code generator that compiles Solidity to an intermediate representation in Yul with EVM dialect.

The main semantic differences to the legacy code generator are the following:

  • Arithmetic operations cause a failing assertion if the result is not in range.
  • Resizing a storage array to a length larger than 2**64 causes a failing assertion.