OmpSupport::requireExactAssociatedLoop
Return the one exact loop owned by directive through expected_root. Every structural edge must be unique and parentâconsistent, and every wrapper must be admitted by path_contract. Malformed, ambiguous, cyclic, attributed, or semantically different wrapper paths are hard errors.
Synopsis
Declared in <src/midend/programTransformation/ompLowering/omp_lowering.h>
SgStatement*
requireExactAssociatedLoop(
SgOmpBodyStatement* directive,
SgStatement* expected_root,
AssociatedLoopPathContract path_contract,
char const* contract);
Return Value
This class represents the notion of a statement.
Parameters
Name |
Description |
expected_root |
This class represents the notion of a statement. |
path_contract |
Typed allowlists for the structural path from an OpenMP directive's exact body edge to its associated loop. Worksharing and SIMD constructs permit only transparent singleton basic blocks. Loop transformations additionally permit nested, supported loopâtransformation directives; semantic OpenMP regions and attributed statements are never transparent wrappers. |
Created with MrDocs