improved dead code pass

This commit is contained in:
ALEXks
2024-02-09 12:43:52 +03:00
parent 7b4b1c9ce4
commit 147ca03733
4 changed files with 7 additions and 4 deletions

View File

@@ -1170,7 +1170,7 @@ static bool runAnalysis(SgProject &project, const int curr_regime, const bool ne
covertToC(file);
else if (curr_regime == INSERT_NO_DISTR_FLAGS_FROM_GUI)
addPrivatesToArraysFromGUI(file, declaredArrays, distrStateFromGUI);
else if (curr_regime == REMOVE_DEAD_CODE_AND_UNPARSE)
else if (curr_regime == REMOVE_DEAD_CODE)
{
auto funcsForFile = getObjectForFileFromMap(file_name, allFuncInfo);
for (auto& func : funcsForFile)
@@ -2522,7 +2522,6 @@ void runPass(const int curr_regime, const char *proj_name, const char *folderNam
findFunctionsToInclude(true);
break;
// all these cases run UNPARSE_FILE after
case REMOVE_DEAD_CODE_AND_UNPARSE:
case RENAME_SYMBOLS:
case RESOLVE_PAR_REGIONS:
case CREATE_PARALLEL_REGIONS:
@@ -2540,6 +2539,7 @@ void runPass(const int curr_regime, const char *proj_name, const char *folderNam
runAnalysis(*project, curr_regime, false);
case SUBST_EXPR_RD_AND_UNPARSE:
case SUBST_EXPR_AND_UNPARSE:
case REMOVE_DEAD_CODE_AND_UNPARSE:
if (folderName)
runAnalysis(*project, UNPARSE_FILE, true, "", folderName);
else

View File

@@ -165,6 +165,7 @@ enum passes {
BUILD_IR,
LIVE_ANALYSIS_IR,
PRIVATE_ANALYSIS_IR,
REMOVE_DEAD_CODE,
REMOVE_DEAD_CODE_AND_UNPARSE,
FIX_COMMON_BLOCKS,
@@ -344,6 +345,7 @@ static void setPassValues()
passNames[CALL_GRAPH_IR] = "CALL_GRAPH_IR";
passNames[LIVE_ANALYSIS_IR] = "LIVE_ANALYSIS_IR";
passNames[PRIVATE_ANALYSIS_IR] = "PRIVATE_ANALYSIS_IR";
passNames[REMOVE_DEAD_CODE] = "REMOVE_DEAD_CODE";
passNames[REMOVE_DEAD_CODE_AND_UNPARSE] = "REMOVE_DEAD_CODE_AND_UNPARSE";
passNames[FIX_COMMON_BLOCKS] = "FIX_COMMON_BLOCKS";

View File

@@ -306,7 +306,8 @@ void InitPassesDependencies(map<passes, vector<passes>> &passDepsIn, set<passes>
Pass(REMOVE_OMP_DIRS) <= Pass(REMOVE_OMP_DIRS_TRANSFORM);
Pass(CALL_GRAPH2) <= Pass(REMOVE_DEAD_CODE_AND_UNPARSE);
Pass(CALL_GRAPH2) <= Pass(REMOVE_DEAD_CODE);
list({ REMOVE_DEAD_CODE, REVERT_SUBST_EXPR, REVERT_SUBST_EXPR_RD, CONVERT_LOOP_TO_ASSIGN, RESTORE_LOOP_FROM_ASSIGN }) <= Pass(REMOVE_DEAD_CODE_AND_UNPARSE);
passesIgnoreStateDone.insert({ CREATE_PARALLEL_DIRS, INSERT_PARALLEL_DIRS, INSERT_SHADOW_DIRS, EXTRACT_PARALLEL_DIRS,
EXTRACT_SHADOW_DIRS, CREATE_REMOTES, UNPARSE_FILE, REMOVE_AND_CALC_SHADOW,

View File

@@ -1,3 +1,3 @@
#pragma once
#define VERSION_SPF "2270"
#define VERSION_SPF "2271"