Performance: Replace string by special single-copy YulString class.

This commit is contained in:
chriseth
2018-11-07 19:30:27 +01:00
parent 0a96f091ab
commit 674e17c2a8
59 changed files with 351 additions and 243 deletions
+2 -2
View File
@@ -52,7 +52,7 @@ public:
/// @param _ssaValues values of variables that are assigned exactly once.
static SimplificationRule<Pattern> const* findFirstMatch(
Expression const& _expr,
std::map<std::string, Expression const*> const& _ssaValues
std::map<YulString, Expression const*> const& _ssaValues
);
/// Checks whether the rulelist is non-empty. This is usually enforced
@@ -96,7 +96,7 @@ 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<std::string, Expression const*> const& _ssaValues) const;
bool matches(Expression const& _expr, std::map<YulString, Expression const*> const& _ssaValues) const;
std::vector<Pattern> arguments() const { return m_arguments; }