3 Commits

Author SHA1 Message Date
ALEXks
9e2d0eacbd added MERGED_ARRAYS operation 2026-04-22 11:20:15 +03:00
ALEXks
daeaafd8a7 updated dvm 2026-04-22 11:10:10 +03:00
ALEXks
5b3716cef3 added to vis call 2026-04-19 20:42:22 +03:00
4 changed files with 22 additions and 2 deletions

View File

@@ -1933,6 +1933,17 @@ static inline bool processStat(SgStatement *st, const string &currFile,
retVal = false;
}
}
//MERGE_ARRAYS
if (isSPF_OP(attributeStatement, SPF_MERGE_ARRAYS_OP))
{
attributeStatement->setLocalLineNumber(-1);
/*if (st->variant() != FOR_NODE)
{
BAD_POSITION_FULL(ERROR, "", "", "before", RR1_1, "DO statement", RR1_3, attributeStatement->lineNumber());
retVal = false;
}*/
}
}
else if (type == SPF_CHECKPOINT_DIR)
{

View File

@@ -1,3 +1,3 @@
#pragma once
#define VERSION_SPF "2480"
#define VERSION_SPF "2482"

View File

@@ -1809,6 +1809,13 @@ int SPF_MoveOperators(void*& context, int winHandler, short* options, short* pro
return simpleTransformPass(MOVE_OPERATORS, options, projName, folderName, output, outputMessage);
}
int SPF_MergeRegions(void*& context, int winHandler, short* options, short* projName, short* folderName, string& output, string& outputMessage)
{
MessageManager::clearCache();
MessageManager::setWinHandler(winHandler);
return simpleTransformPass(MERGE_REGIONS, options, projName, folderName, output, outputMessage);
}
static inline void convertBackSlash(char *str, int strL)
{
for (int z = 0; z < strL; ++z)
@@ -2519,6 +2526,8 @@ const wstring Sapfor_RunTransformation(const char* transformName_c, const char*
retCode = SPF_InsertPrivateArrayDirectives(context, winHandler, optSh, projSh, fold, output, outputMessage);
else if (whichRun == "SPF_MoveOperators")
retCode = SPF_MoveOperators(context, winHandler, optSh, projSh, fold, output, outputMessage);
else if (whichRun == "SPF_MergeRegions")
retCode = SPF_MergeRegions(context, winHandler, optSh, projSh, fold, output, outputMessage);
else if (whichRun == "SPF_CreateParallelVariant")
{
vector<string> splited;