aboutsummaryrefslogtreecommitdiffstats
path: root/libyul/optimiser/SimplificationRules.h
diff options
context:
space:
mode:
Diffstat (limited to 'libyul/optimiser/SimplificationRules.h')
-rw-r--r--libyul/optimiser/SimplificationRules.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/libyul/optimiser/SimplificationRules.h b/libyul/optimiser/SimplificationRules.h
index 16aaba04..8213a185 100644
--- a/libyul/optimiser/SimplificationRules.h
+++ b/libyul/optimiser/SimplificationRules.h
@@ -33,7 +33,7 @@
namespace yul
{
-
+struct Dialect;
class Pattern;
/**
@@ -49,6 +49,7 @@ public:
/// @param _ssaValues values of variables that are assigned exactly once.
static SimplificationRule<Pattern> const* findFirstMatch(
Expression const& _expr,
+ Dialect const& _dialect,
std::map<YulString, Expression const*> const& _ssaValues
);
@@ -93,7 +94,11 @@ public:
/// same expression equivalence class.
void setMatchGroup(unsigned _group, std::map<unsigned, Expression const*>& _matchGroups);
unsigned matchGroup() const { return m_matchGroup; }
- bool matches(Expression const& _expr, std::map<YulString, Expression const*> const& _ssaValues) const;
+ bool matches(
+ Expression const& _expr,
+ Dialect const& _dialect,
+ std::map<YulString, Expression const*> const& _ssaValues
+ ) const;
std::vector<Pattern> arguments() const { return m_arguments; }