mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Use experimental memory tracking for loadresolver
This commit is contained in:
parent
8f5c0f7373
commit
070a1894c7
@ -37,6 +37,7 @@ void LoadResolver::run(OptimiserStepContext& _context, Block& _ast)
|
||||
bool containsMSize = MSizeFinder::containsMSize(_context.dialect, _ast);
|
||||
LoadResolver{
|
||||
_context.dialect,
|
||||
_ast,
|
||||
SideEffectsPropagator::sideEffects(_context.dialect, CallGraphGenerator::callGraph(_ast)),
|
||||
!containsMSize
|
||||
}(_ast);
|
||||
|
@ -24,6 +24,7 @@
|
||||
|
||||
#include <libyul/optimiser/DataFlowAnalyzer.h>
|
||||
#include <libyul/optimiser/OptimiserStep.h>
|
||||
#include <libyul/optimiser/SSAValueTracker.h>
|
||||
|
||||
namespace solidity::yul
|
||||
{
|
||||
@ -46,10 +47,11 @@ public:
|
||||
private:
|
||||
LoadResolver(
|
||||
Dialect const& _dialect,
|
||||
Block const& _ast,
|
||||
std::map<YulString, SideEffects> _functionSideEffects,
|
||||
bool _optimizeMLoad
|
||||
):
|
||||
DataFlowAnalyzer(_dialect, std::move(_functionSideEffects)),
|
||||
DataFlowAnalyzer(_dialect, std::move(_functionSideEffects), SSAValueTracker::ssaVariables(_ast)),
|
||||
m_optimizeMLoad(_optimizeMLoad)
|
||||
{}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user