mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Reuse stack slots in Yul to EVM code generation.
This commit is contained in:
@@ -93,6 +93,16 @@ void ASTWalker::operator()(Block const& _block)
|
||||
walkVector(_block.statements);
|
||||
}
|
||||
|
||||
void ASTWalker::visit(Statement const& _st)
|
||||
{
|
||||
boost::apply_visitor(*this, _st);
|
||||
}
|
||||
|
||||
void ASTWalker::visit(Expression const& _e)
|
||||
{
|
||||
boost::apply_visitor(*this, _e);
|
||||
}
|
||||
|
||||
void ASTModifier::operator()(FunctionalInstruction& _instr)
|
||||
{
|
||||
walkVector(_instr.arguments | boost::adaptors::reversed);
|
||||
@@ -155,3 +165,13 @@ void ASTModifier::operator()(Block& _block)
|
||||
{
|
||||
walkVector(_block.statements);
|
||||
}
|
||||
|
||||
void ASTModifier::visit(Statement& _st)
|
||||
{
|
||||
boost::apply_visitor(*this, _st);
|
||||
}
|
||||
|
||||
void ASTModifier::visit(Expression& _e)
|
||||
{
|
||||
boost::apply_visitor(*this, _e);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user