diff --git a/sapfor/experts/Sapfor_2017/_src/Sapfor.cpp b/sapfor/experts/Sapfor_2017/_src/Sapfor.cpp index b8b8df3..e5c58fd 100644 --- a/sapfor/experts/Sapfor_2017/_src/Sapfor.cpp +++ b/sapfor/experts/Sapfor_2017/_src/Sapfor.cpp @@ -1,4 +1,4 @@ -#include "Utils/leak_detector.h" +#include "Utils/leak_detector.h" #pragma comment(linker, "/STACK:536870912") // 512 МБ @@ -2333,6 +2333,7 @@ void runPass(const int curr_regime, const char *proj_name, const char *folderNam initIntrinsicFunctionNames(); initTags(); InitPassesDependencies(passesDependencies, passesIgnoreStateDone); + removalsFromPassesDependencies(passesDependencies); setPassValues(); if (dvmInited == false) diff --git a/sapfor/experts/Sapfor_2017/_src/Utils/PassManager.h b/sapfor/experts/Sapfor_2017/_src/Utils/PassManager.h index 8906ee5..06fb0b6 100644 --- a/sapfor/experts/Sapfor_2017/_src/Utils/PassManager.h +++ b/sapfor/experts/Sapfor_2017/_src/Utils/PassManager.h @@ -153,8 +153,6 @@ void InitPassesDependencies(map> &passDepsIn, set passDeps = &passDepsIn; - /* Insertions */ - Pass(PREPROC_SPF) <= Pass(CREATE_INTER_TREE); list({ CREATE_INTER_TREE, CORRECT_VAR_DECL }) << list({ GCOV_PARSER, PREDICT_SCHEME, INSERT_INTER_TREE }); @@ -257,10 +255,6 @@ void InitPassesDependencies(map> &passDepsIn, set Pass(CALL_GRAPH2) <= Pass(FIX_COMMON_BLOCKS); - /* Removals */ - - Pass(INSERT_PARALLEL_DIRS_NODIST) -= list({ FIND_FUNC_TO_INCLUDE, CHECK_FUNC_TO_INCLUDE }); - 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, REVERSE_CREATED_NESTED_LOOPS, PREDICT_SCHEME, CALCULATE_STATS_SCHEME, REVERT_SPF_DIRS, CLEAR_SPF_DIRS, TRANSFORM_SHADOW_IF_FULL, @@ -275,4 +269,9 @@ void InitPassesDependencies(map> &passDepsIn, set exit(0); } } + +void removalsFromPassesDependencies(map>& passDepsIn) +{ + Pass(INSERT_PARALLEL_DIRS_NODIST) -= list({ FIND_FUNC_TO_INCLUDE, CHECK_FUNC_TO_INCLUDE }); +} #undef list