REMOVE_DIST_ARRAYS_FROM_IO: fix type, add TODO
This commit is contained in:
@@ -504,7 +504,7 @@ static void replaceArrayInFragment(SgSymbol* replace_symb,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool ioReginBorder(SgStatement* stat, SgStatement* last_io_bound)
|
static bool ioRegionBorder(SgStatement* stat, SgStatement* last_io_bound)
|
||||||
{
|
{
|
||||||
auto var = stat->variant();
|
auto var = stat->variant();
|
||||||
|
|
||||||
@@ -535,8 +535,6 @@ static bool ioReginBorder(SgStatement* stat, SgStatement* last_io_bound)
|
|||||||
if (last_io_bound && last_io_bound->lastNodeOfStmt() && last_io_bound->lastNodeOfStmt() == stat)
|
if (last_io_bound && last_io_bound->lastNodeOfStmt() && last_io_bound->lastNodeOfStmt() == stat)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
int parent_var;
|
|
||||||
|
|
||||||
if (var == CONTROL_END && border_stats.find(stat->controlParent()->variant()) != border_stats.end())
|
if (var == CONTROL_END && border_stats.find(stat->controlParent()->variant()) != border_stats.end())
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
@@ -602,6 +600,7 @@ void replaceDistributedArraysInIO(vector<ParallelRegion*>& regions,
|
|||||||
|
|
||||||
auto var = curr_stmt->variant();
|
auto var = curr_stmt->variant();
|
||||||
|
|
||||||
|
// TODO: does not work with user regions
|
||||||
if (var == PROC_HEDR || var == PROG_HEDR || var == FUNC_HEDR)
|
if (var == PROC_HEDR || var == PROG_HEDR || var == FUNC_HEDR)
|
||||||
{
|
{
|
||||||
current_func_info = NULL;
|
current_func_info = NULL;
|
||||||
@@ -628,7 +627,7 @@ void replaceDistributedArraysInIO(vector<ParallelRegion*>& regions,
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ioReginBorder(curr_stmt, last_io_bound))
|
if (ioRegionBorder(curr_stmt, last_io_bound))
|
||||||
{
|
{
|
||||||
for (const auto& by_array_to_copy : need_replace)
|
for (const auto& by_array_to_copy : need_replace)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user