Side effects propagator.

This commit is contained in:
chriseth
2019-08-15 16:30:05 +02:00
parent c047803b80
commit a2a06d0318
5 changed files with 74 additions and 7 deletions
+15
View File
@@ -62,6 +62,21 @@ private:
SideEffects m_sideEffects;
};
/**
* This class can be used to determine the side-effects of user-defined functions.
*
* It is given a dialect and a mapping that represents the direct calls from user-defined
* functions to other user-defined functions and built-in functions.
*/
class SideEffectsPropagator
{
public:
static std::map<YulString, SideEffects> sideEffects(
Dialect const& _dialect,
std::map<YulString, std::set<YulString>> const& _directCallGraph
);
};
/**
* Class that can be used to find out if certain code contains the MSize instruction.
*