rename DATA_FLOW_UPD_STATUS constants
This commit is contained in:
@@ -6,11 +6,7 @@
|
|||||||
#include "../CFGraph.h"
|
#include "../CFGraph.h"
|
||||||
#include "../IR.h"
|
#include "../IR.h"
|
||||||
|
|
||||||
enum DATA_FLOW_UPD_STATUS {
|
enum class DATA_FLOW_UPD_STATUS { NO_CHANGE = 0, PROPAGATED, GENERATED };
|
||||||
NO_CHANGE = 0,
|
|
||||||
FORWARD,
|
|
||||||
NEW
|
|
||||||
};
|
|
||||||
|
|
||||||
template <class DataType>
|
template <class DataType>
|
||||||
class DataFlowAnalysisNode {
|
class DataFlowAnalysisNode {
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ void DataFlowAnalysisNode<DataType>::doStep()
|
|||||||
if (inserted && next->out_cnt > out_max_cnt)
|
if (inserted && next->out_cnt > out_max_cnt)
|
||||||
out_max_cnt = next->out_cnt;
|
out_max_cnt = next->out_cnt;
|
||||||
|
|
||||||
uniq_change |= status == DATA_FLOW_UPD_STATUS::NEW;
|
uniq_change |= status == DATA_FLOW_UPD_STATUS::GENERATED;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -259,7 +259,7 @@ public:
|
|||||||
if (live.find(byArg.first) == live.end() && dead.find(byArg.first) == dead.end())
|
if (live.find(byArg.first) == live.end() && dead.find(byArg.first) == dead.end())
|
||||||
inserted |= getBlock()->addLiveIn({ byArg });
|
inserted |= getBlock()->addLiveIn({ byArg });
|
||||||
|
|
||||||
return inserted ? DATA_FLOW_UPD_STATUS::FORWARD : DATA_FLOW_UPD_STATUS::NO_CHANGE;
|
return inserted ? DATA_FLOW_UPD_STATUS::PROPAGATED : DATA_FLOW_UPD_STATUS::NO_CHANGE;
|
||||||
}
|
}
|
||||||
|
|
||||||
LiveVarAnalysisNode(SAPFOR::BasicBlock* block, vector<SAPFOR::Argument*>& formal_parameters,
|
LiveVarAnalysisNode(SAPFOR::BasicBlock* block, vector<SAPFOR::Argument*>& formal_parameters,
|
||||||
@@ -738,7 +738,7 @@ void runLiveVariableAnalysis(const map<FuncInfo*, vector<SAPFOR::BasicBlock*>>&
|
|||||||
if (exit->addIn(converted))
|
if (exit->addIn(converted))
|
||||||
{
|
{
|
||||||
exit->setInCnt(max_cnt);
|
exit->setInCnt(max_cnt);
|
||||||
if (exit->forwardData(converted))
|
if (exit->forwardData(converted) != DATA_FLOW_UPD_STATUS::NO_CHANGE)
|
||||||
exit->setOutCnt(max_cnt);
|
exit->setOutCnt(max_cnt);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -254,7 +254,7 @@ public:
|
|||||||
|
|
||||||
DATA_FLOW_UPD_STATUS forwardData(const map<SAPFOR::Argument*, vector<SAPFOR::BasicBlock*>>& data)
|
DATA_FLOW_UPD_STATUS forwardData(const map<SAPFOR::Argument*, vector<SAPFOR::BasicBlock*>>& data)
|
||||||
{
|
{
|
||||||
bool inserted_forward = false, inserted_new = false;
|
bool inserted_prop = false, inserted_gen = false;
|
||||||
|
|
||||||
SAPFOR::BasicBlock* bb = getBlock();
|
SAPFOR::BasicBlock* bb = getBlock();
|
||||||
|
|
||||||
@@ -281,7 +281,7 @@ public:
|
|||||||
if (data_it == data.end())
|
if (data_it == data.end())
|
||||||
printInternalError(convertFileName(__FILE__).c_str(), __LINE__);
|
printInternalError(convertFileName(__FILE__).c_str(), __LINE__);
|
||||||
|
|
||||||
inserted_forward |= bb->addLiveIn({ *data_it });
|
inserted_prop |= bb->addLiveIn({ *data_it });
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -295,7 +295,7 @@ public:
|
|||||||
bb->removeLiveIn(arg);
|
bb->removeLiveIn(arg);
|
||||||
}
|
}
|
||||||
if(!skip)
|
if(!skip)
|
||||||
inserted_new |= bb->addLiveIn({ { arg, { bb } } });
|
inserted_gen |= bb->addLiveIn({ { arg, { bb } } });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -308,17 +308,17 @@ public:
|
|||||||
{
|
{
|
||||||
useful_block = true;
|
useful_block = true;
|
||||||
|
|
||||||
inserted_new = true;
|
inserted_gen = true;
|
||||||
next_notempty_out = { this };
|
next_notempty_out = { this };
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(inserted_new)
|
if(inserted_gen)
|
||||||
return DATA_FLOW_UPD_STATUS::NEW;
|
return DATA_FLOW_UPD_STATUS::GENERATED;
|
||||||
else if(inserted_forward)
|
else if(inserted_prop)
|
||||||
return DATA_FLOW_UPD_STATUS::FORWARD;
|
return DATA_FLOW_UPD_STATUS::PROPAGATED;
|
||||||
|
|
||||||
return DATA_FLOW_UPD_STATUS::NO_CHANGE;
|
return DATA_FLOW_UPD_STATUS::NO_CHANGE;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user