mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Assembly: Remove StackAssignment instruction.
This commit is contained in:
@@ -59,12 +59,6 @@ Statement ASTCopier::operator()(Assignment const& _assignment)
|
||||
};
|
||||
}
|
||||
|
||||
Statement ASTCopier::operator()(StackAssignment const&)
|
||||
{
|
||||
assertThrow(false, OptimizerException, "Invalid operation.");
|
||||
return {};
|
||||
}
|
||||
|
||||
Statement ASTCopier::operator()(Label const&)
|
||||
{
|
||||
assertThrow(false, OptimizerException, "Invalid operation.");
|
||||
|
||||
@@ -51,7 +51,6 @@ public:
|
||||
virtual Statement operator()(ExpressionStatement const& _statement) = 0;
|
||||
virtual Statement operator()(Instruction const& _instruction) = 0;
|
||||
virtual Statement operator()(Label const& _label) = 0;
|
||||
virtual Statement operator()(StackAssignment const& _assignment) = 0;
|
||||
virtual Statement operator()(Assignment const& _assignment) = 0;
|
||||
virtual Statement operator()(VariableDeclaration const& _varDecl) = 0;
|
||||
virtual Statement operator()(If const& _if) = 0;
|
||||
@@ -78,7 +77,6 @@ public:
|
||||
Expression operator()(FunctionCall const&) override;
|
||||
Statement operator()(ExpressionStatement const& _statement) override;
|
||||
Statement operator()(Label const& _label) override;
|
||||
Statement operator()(StackAssignment const& _assignment) override;
|
||||
Statement operator()(Assignment const& _assignment) override;
|
||||
Statement operator()(VariableDeclaration const& _varDecl) override;
|
||||
Statement operator()(If const& _if) override;
|
||||
|
||||
@@ -49,7 +49,6 @@ public:
|
||||
virtual void operator()(FunctionCall const& _funCall);
|
||||
virtual void operator()(ExpressionStatement const& _statement);
|
||||
virtual void operator()(Label const&) { assertThrow(false, OptimizerException, ""); }
|
||||
virtual void operator()(StackAssignment const&) { assertThrow(false, OptimizerException, ""); }
|
||||
virtual void operator()(Assignment const& _assignment);
|
||||
virtual void operator()(VariableDeclaration const& _varDecl);
|
||||
virtual void operator()(If const& _if);
|
||||
@@ -86,7 +85,6 @@ public:
|
||||
virtual void operator()(FunctionCall& _funCall);
|
||||
virtual void operator()(ExpressionStatement& _statement);
|
||||
virtual void operator()(Label&) { assertThrow(false, OptimizerException, ""); }
|
||||
virtual void operator()(StackAssignment&) { assertThrow(false, OptimizerException, ""); }
|
||||
virtual void operator()(Assignment& _assignment);
|
||||
virtual void operator()(VariableDeclaration& _varDecl);
|
||||
virtual void operator()(If& _if);
|
||||
|
||||
@@ -169,11 +169,6 @@ bool SyntacticallyEqual::statementEqual(Label const&, Label const&)
|
||||
assertThrow(false, OptimizerException, "");
|
||||
}
|
||||
|
||||
bool SyntacticallyEqual::statementEqual(StackAssignment const&, StackAssignment const&)
|
||||
{
|
||||
assertThrow(false, OptimizerException, "");
|
||||
}
|
||||
|
||||
bool SyntacticallyEqual::statementEqual(Block const& _lhs, Block const& _rhs)
|
||||
{
|
||||
return containerEqual(_lhs.statements, _rhs.statements, [this](Statement const& _lhsStmt, Statement const& _rhsStmt) -> bool {
|
||||
|
||||
@@ -61,7 +61,6 @@ public:
|
||||
private:
|
||||
bool statementEqual(Instruction const& _lhs, Instruction const& _rhs);
|
||||
bool statementEqual(Label const& _lhs, Label const& _rhs);
|
||||
bool statementEqual(StackAssignment const& _lhs, StackAssignment const& _rhs);
|
||||
|
||||
bool visitDeclaration(TypedName const& _lhs, TypedName const& _rhs);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user