yul: Add new optimizer rules for create and create2 builtins

This commit is contained in:
Bhargava Shastry
2019-09-09 17:06:56 +02:00
parent 96b6b45658
commit 09fa31ccc5
5 changed files with 92 additions and 19 deletions
+7 -3
View File
@@ -97,15 +97,19 @@ SimplificationRules::SimplificationRules()
Pattern B(PatternKind::Constant);
Pattern C(PatternKind::Constant);
// Anything.
Pattern W;
Pattern X;
Pattern Y;
Pattern Z;
A.setMatchGroup(1, m_matchGroups);
B.setMatchGroup(2, m_matchGroups);
C.setMatchGroup(3, m_matchGroups);
X.setMatchGroup(4, m_matchGroups);
Y.setMatchGroup(5, m_matchGroups);
W.setMatchGroup(4, m_matchGroups);
X.setMatchGroup(5, m_matchGroups);
Y.setMatchGroup(6, m_matchGroups);
Z.setMatchGroup(7, m_matchGroups);
addRules(simplificationRuleList(A, B, C, X, Y));
addRules(simplificationRuleList(A, B, C, W, X, Y, Z));
assertThrow(isInitialized(), OptimizerException, "Rule list not properly initialized.");
}