ArrayAnalysis: consider case of IO_PRIV array from module #65

Merged
Alexander_KS merged 1 commits from io_priv_module_arrays into master 2025-09-11 05:07:40 +00:00
2 changed files with 5 additions and 5 deletions
Showing only changes of commit df9a9a30bb - Show all commits

View File

@@ -241,13 +241,15 @@ static void findArrayRefs (SgExpression* ex, SgStatement* st, string fName, int
itNew->second.first->SetRegionPlace(reg); itNew->second.first->SetRegionPlace(reg);
const auto oldVal = itNew->second.first->GetDistributeFlagVal(); const auto oldVal = itNew->second.first->GetDistributeFlagVal();
bool isarrayInModule = (itNew->second.first->GetLocation().first == DIST::l_MODULE); bool isArrayInModule = (itNew->second.first->GetLocation().first == DIST::l_MODULE);
if (oldVal == DIST::DISTR || oldVal == DIST::NO_DISTR) if (oldVal == DIST::DISTR || oldVal == DIST::NO_DISTR)
{ {
if (itNew->second.first->IsOmpThreadPrivate()) if (itNew->second.first->IsOmpThreadPrivate())
itNew->second.first->SetDistributeFlag(DIST::SPF_PRIV); itNew->second.first->SetDistributeFlag(DIST::SPF_PRIV);
else if (privates.find(symb->identifier()) != privates.end() || isarrayInModule) else if (deprecatedByIO.find(symb->identifier()) != deprecatedByIO.end())
itNew->second.first->SetDistributeFlag(DIST::IO_PRIV);
else if (isArrayInModule || privates.find(symb->identifier()) != privates.end())
{ {
//check in module //check in module
if (itNew->second.first->GetLocation().first == DIST::l_MODULE) if (itNew->second.first->GetLocation().first == DIST::l_MODULE)
@@ -274,8 +276,6 @@ static void findArrayRefs (SgExpression* ex, SgStatement* st, string fName, int
else else
itNew->second.first->SetDistributeFlag(DIST::SPF_PRIV); itNew->second.first->SetDistributeFlag(DIST::SPF_PRIV);
} }
else if (deprecatedByIO.find(symb->identifier()) != deprecatedByIO.end())
itNew->second.first->SetDistributeFlag(DIST::IO_PRIV);
else if (isSgConstantSymb(symb) || inDataStat) else if (isSgConstantSymb(symb) || inDataStat)
itNew->second.first->SetDistributeFlag(DIST::SPF_PRIV); itNew->second.first->SetDistributeFlag(DIST::SPF_PRIV);
else else

View File

@@ -1,3 +1,3 @@
#pragma once #pragma once
#define VERSION_SPF "2441" #define VERSION_SPF "2442"