added REMOVE_SPF pass

This commit is contained in:
ALEXks
2025-03-18 09:37:20 +03:00
parent 43dfc2368a
commit d58227bd0c
10 changed files with 63 additions and 93 deletions

View File

@@ -442,8 +442,11 @@ static void replaceComment(string &dir, const char *firstChar)
}
}
void removeDvmDirectives(SgFile *file, const bool toComment)
void removeDvmSpfDirectives(SgFile* file, bool removeDvm, bool removeSpf, bool toComment)
{
if (!removeDvm && !removeSpf)
printInternalError(convertFileName(__FILE__).c_str(), __LINE__);
vector<SgStatement*> toDel;
vector<SgStatement*> toTotalDel;
const string currFile = file->filename();
@@ -467,7 +470,7 @@ void removeDvmDirectives(SgFile *file, const bool toComment)
break;
const int var = st->variant();
if (isDVM_stat(st))
if (isDVM_stat(st) && removeDvm || isSPF_stat(st) && removeSpf)
if (st->fileName() == currFile)
toDel.push_back(st);
@@ -477,7 +480,7 @@ void removeDvmDirectives(SgFile *file, const bool toComment)
}
}
if (toComment)
if (toComment && removeDvm)
{
for (auto &elem : toDel)
{