Modifier and Type | Field and Description |
---|---|
protected Xnode |
AnalyzedPragma._pragma |
Modifier and Type | Method and Description |
---|---|
Xnode |
AnalyzedPragma.getPragma()
Get the attached pragma object.
|
Modifier and Type | Method and Description |
---|---|
void |
Translator.generateTransformation(XcodeProgram xcodeml,
Xnode pragma)
Generate transformation according to the pragma.
|
boolean |
Translator.isHandledPragma(Xnode pragma)
Check if the given pragma can be handled by the current translator.
|
void |
AnalyzedPragma.setPragma(Xnode rawPragma)
Attach a pragma object.
|
Constructor and Description |
---|
AnalyzedPragma(Xnode rawPragma)
Constructs an AnalyzedPragma object with a raw pragma element object
attached.
|
Modifier and Type | Method and Description |
---|---|
Xnode |
DependenceAnalysis.getDoStmt()
Get the do statement node used for this analysis.
|
Modifier and Type | Method and Description |
---|---|
void |
IterationSpace.reload(java.util.List<Xnode> doStatements)
Operation needed after a fusion.
|
Constructor and Description |
---|
DependenceAnalysis(Xnode loop)
Constructs and run the analysis of dependencies.
|
Constructor and Description |
---|
IterationSpace(java.util.List<Xnode> doStatements)
Constructs an iteration space object and populate it with the given do
statements.
|
Modifier and Type | Method and Description |
---|---|
static Xnode |
Directive.findParallelRegionEnd(Xnode functionDefinition,
Xnode from)
Skip elements in epilogue and find the last element that will be included
in the parallel region.
|
static Xnode |
Directive.findParallelRegionStart(Xnode functionDefinition,
Xnode from)
Skip elements in preamble and find the first element that will be included
in the parallel region.
|
static Xnode |
Directive.generateAcceleratorClause(XcodeProgram xcodeml,
Xnode startStmt,
java.lang.String accClause)
Generate corresponding pragmas applied directly after a CLAW pragma.
|
static Xnode |
Directive.generateParallelClause(XcodeProgram xcodeml,
Xnode startStmt,
Xnode endStmt)
Generate corresponding pragmas to surround the code with a parallel
accelerated region.
|
static Xnode |
Directive.generateUpdate(XcodeProgram xcodeml,
Xnode hook,
java.util.List<java.lang.String> vars,
DataMovement direction)
Generate update directives for device and host data transfer.
|
Modifier and Type | Method and Description |
---|---|
static Xnode |
Directive.findParallelRegionEnd(Xnode functionDefinition,
Xnode from)
Skip elements in epilogue and find the last element that will be included
in the parallel region.
|
static Xnode |
Directive.findParallelRegionStart(Xnode functionDefinition,
Xnode from)
Skip elements in preamble and find the first element that will be included
in the parallel region.
|
static Xnode |
Directive.generateAcceleratorClause(XcodeProgram xcodeml,
Xnode startStmt,
java.lang.String accClause)
Generate corresponding pragmas applied directly after a CLAW pragma.
|
static void |
Directive.generateDataRegionClause(XcodeProgram xcodeml,
java.util.List<java.lang.String> presents,
java.util.List<java.lang.String> creates,
Xnode startStmt,
Xnode endStmt)
Generate directive directive for a data region.
|
static void |
Directive.generateLoopDirectives(XcodeProgram xcodeml,
Xnode startStmt,
Xnode endStmt,
int collapse)
Generates directive directive for a loop region.
|
static Xnode |
Directive.generateParallelClause(XcodeProgram xcodeml,
Xnode startStmt,
Xnode endStmt)
Generate corresponding pragmas to surround the code with a parallel
accelerated region.
|
static void |
Directive.generateParallelLoopClause(XcodeProgram xcodeml,
java.util.List<java.lang.String> privates,
Xnode startStmt,
Xnode endStmt,
int collapse)
Generate directive directive for a parallel loop.
|
static void |
Directive.generatePrivateClause(XcodeProgram xcodeml,
Xnode stmt,
java.lang.String var)
Generate the correct clauses for private variable on directive.
|
static Xnode |
Directive.generateUpdate(XcodeProgram xcodeml,
Xnode hook,
java.util.List<java.lang.String> vars,
DataMovement direction)
Generate update directives for device and host data transfer.
|
Modifier and Type | Method and Description |
---|---|
static Xnode |
Function.findArg(Xnode fctCall,
java.lang.String argName)
Find specific argument in a function call.
|
static Xnode |
Function.findDecl(FfunctionDefinition fctDef,
java.lang.String name)
Find the declaration element in the current function definition or in
parent if nested.
|
static Xnode |
Pragma.findPrevious(Xnode from,
java.lang.String keyword)
Find a pragma element in the previous nodes containing a given keyword.
|
Modifier and Type | Method and Description |
---|---|
static void |
Field.adaptAllocate(PromotionInfo promotionInfo,
Xnode parent,
XcodeProgram xcodeml)
Adapt allocate statement with given dimension.
|
static void |
Field.adaptArrayRef(PromotionInfo promotionInfo,
Xnode parent,
XcodeProgram xcodeml)
Adapt all the array references of the variable in the data clause in the
current function/subroutine definition.
|
static void |
Body.append(Xnode masterBody,
Xnode slaveBody)
Append the slave body to the master body.
|
static boolean |
Range.compare(Xnode idx1,
Xnode idx2,
boolean withLowerBound)
Compare if two indexRange nodes are identical.
|
static void |
Field.demote(Xnode arrayRef,
java.util.List<java.lang.Integer> keptDimensions)
Demote an array reference to a reference with fewer dimensions.
|
static void |
Field.demoteToScalar(Xnode arrayRef)
Demote an array reference to a var reference.
|
static boolean |
Condition.dependsOn(Xnode condition,
java.util.Set<java.lang.String> variables)
Check whether the condition depends on some variables.
|
static void |
Loop.extractBody(Xnode loop)
Extract the body of a do statement and place it directly after it.
|
static void |
Loop.extractBody(Xnode loop,
Xnode ref)
Extract the body of a do statement and place it after the reference node.
|
static java.lang.String |
Loop.extractInductionVariable(Xnode doStatement)
Get the string representation of the induction variable of a do statement.
|
static Xnode |
Function.findArg(Xnode fctCall,
java.lang.String argName)
Find specific argument in a function call.
|
static Xnode |
Pragma.findPrevious(Xnode from,
java.lang.String keyword)
Find a pragma element in the previous nodes containing a given keyword.
|
static boolean |
Pragma.fromClawPrimitive(Xnode pragma)
Check if the pragma was already continued.
|
static java.lang.String |
Pragma.getPrefix(Xnode pragma)
Return the pragma prefix.
|
static boolean |
Loop.hasSameIndexRange(Xnode l1,
Xnode l2)
Compare the iteration range of two do statements.
|
static boolean |
Loop.hasSameIndexRangeBesidesLower(Xnode l1,
Xnode l2)
Compare the iteration range of two do statements.
|
static HoistedNestedDoStatement |
Loop.hoist(java.util.List<HoistedNestedDoStatement> hoistedGroups,
Xnode start,
Xnode end,
XcodeML xcodeml)
Perform a loop hoisting on the given nested do statements.
|
static boolean |
Body.isEmpty(Xnode body)
Check whether a body is empty.
|
static void |
Loop.merge(Xnode masterDoStmt,
Xnode slaveDoStmt)
Merge two do statements together.
|
static void |
Pragma.moveInExecution(Xnode pragma)
If the first pragma statement is located as the first statement of the
execution block, the OMNI Compiler front-end places it with the declaration
block.
|
static void |
Body.shiftIn(Xnode from,
Xnode until,
Xnode targetBody,
boolean included)
Shift all statements from the first siblings of the "from" element until
the "until" element if "included" is true.
|
static void |
Pragma.splitByCont(Xnode pragma,
java.lang.String prefix,
XcodeProgram xcodeml)
Split the line by its previous continuation mark.
|
static void |
Pragma.splitByLength(Xnode pragma,
XcodeProgram xcodeml,
java.lang.String prefix)
Split the line by its length and add continuation symbols.
|
Modifier and Type | Method and Description |
---|---|
static boolean |
Range.compare(java.util.List<Xnode> list1,
java.util.List<Xnode> list2)
Compare two list of indexRange.
|
static boolean |
Range.compare(java.util.List<Xnode> list1,
java.util.List<Xnode> list2)
Compare two list of indexRange.
|
Modifier and Type | Class and Description |
---|---|
class |
AssignStatement
Abstraction of assignment statement to be able to categorize them and
easily extract some information.
|
Modifier and Type | Method and Description |
---|---|
Xnode |
BoundDefinition.generate(XcodeML xcodeml)
Generate the corresponding node to represent the bound.
|
Xnode |
DimensionDefinition.generateAllocateNode(XcodeProgram xcodeml)
Generate additional node to be inserted in the allocate statement
arrayIndex based on the dimension definition.
|
Xnode |
DimensionDefinition.generateArrayIndex(XcodeML xcodeml)
Generate the array index that will be placed in the array reference for
this additional dimension.
|
Xnode |
DimensionDefinition.generateIndexRange(XcodeML xcodeml,
boolean withStep)
Generate the correct indexRange element with lowerBound, upperBound and
step from the current dimension.
|
Xnode |
NestedDoStatement.get(int i)
Get statement at level i
|
Xnode |
NestedDoStatement.getInnerStatement()
Get the inner do statements.
|
Xnode |
AssignStatement.getLhs()
Get the left hand-side node of the assignment.
|
Xnode |
NestedDoStatement.getOuterStatement()
Get the outer do statements.
|
Constructor and Description |
---|
HoistedNestedDoStatement(Xnode outerDoStatement,
int nb) |
NestedDoStatement(Xnode outerDoStatement)
Constructs a group of nested do statements from the outer statement.
|
NestedDoStatement(Xnode outerDoStatement,
int nb)
Constructs a group of nested do statements from the outer statement with
maximum Nb do statements.
|
Modifier and Type | Method and Description |
---|---|
static Xnode |
XnodeUtil.getFirstArrayAssign(Xnode from,
java.lang.String arrayName)
Get the first assignment statement for an array reference.
|
Modifier and Type | Method and Description |
---|---|
static java.util.List<Xnode> |
XnodeUtil.findAllReferences(Xnode parent)
Find all the var elements that are real references to a variable.
|
static java.util.List<Xnode> |
XnodeUtil.findAllReferences(Xnode parent,
java.lang.String id)
Find all the var elements that are real references to a variable.
|
static java.util.List<Xnode> |
XnodeUtil.findIndexes(Xnode parent)
Find all the index elements (arrayIndex and indexRange) in an element.
|
static java.util.List<Xnode> |
XnodeUtil.getAllArrayReferences(Xnode parent,
java.lang.String arrayName)
Find all array references elements in a given body and give var name.
|
static java.util.List<Xnode> |
XnodeUtil.getAllArrayReferencesByOffsets(Xnode from,
java.lang.String identifier,
java.util.List<java.lang.Integer> offsets)
Find all array references in the next children that match the given
criteria.
|
static java.util.List<Xnode> |
XnodeUtil.getAllArrayReferencesInSiblings(Xnode from,
java.lang.String identifier)
Get all array references in the siblings of the given element.
|
static java.util.List<Xnode> |
XnodeUtil.getAllVarReferences(Xnode parent,
java.lang.String varName)
Find all var references elements in a given body and give var name.
|
static java.util.List<Xnode> |
XnodeUtil.getArrayAssignInBlock(Xnode from,
java.lang.String endPragma)
Find all assignment statement from a node until the end pragma.
|
static java.util.List<Xnode> |
XnodeUtil.getIdxRangesFromArrayRef(Xnode arrayRef)
Retrieve the index ranges of an array notation.
|
static java.util.List<Xnode> |
XnodeUtil.getNodes(Xnode root,
java.util.List<Xcode> nodeOpcodes)
Get given statements in the subtree.
|
static java.util.List<Xnode> |
XnodeUtil.getNodes(Xnode from,
Xnode to,
java.util.List<Xcode> nodeOpcodes)
Get given statements in between from and to included.
|
Modifier and Type | Method and Description |
---|---|
static void |
XnodeUtil.deleteBetween(Xnode start,
Xnode end)
Delete all the elements between the two given elements.
|
static java.util.List<Xnode> |
XnodeUtil.findAllReferences(Xnode parent)
Find all the var elements that are real references to a variable.
|
static java.util.List<Xnode> |
XnodeUtil.findAllReferences(Xnode parent,
java.lang.String id)
Find all the var elements that are real references to a variable.
|
static java.util.List<HoistedNestedDoStatement> |
XnodeUtil.findDoStatementForHoisting(Xnode from,
Xnode endPragma,
java.util.List<java.lang.String> inductionVars)
Find all the nested do statement groups following the inductions iterations
define in inductionVars and being located between the "from" element and
the end pragma.
|
static java.util.List<Xnode> |
XnodeUtil.findIndexes(Xnode parent)
Find all the index elements (arrayIndex and indexRange) in an element.
|
static java.util.List<java.lang.String> |
XnodeUtil.gatherArguments(XcodeProgram xcodeml,
Xnode fctCall,
Intent intent,
boolean arrayOnly)
Gather arguments of a function call.
|
static java.util.List<Xnode> |
XnodeUtil.getAllArrayReferences(Xnode parent,
java.lang.String arrayName)
Find all array references elements in a given body and give var name.
|
static java.util.List<Xnode> |
XnodeUtil.getAllArrayReferencesByOffsets(Xnode from,
java.lang.String identifier,
java.util.List<java.lang.Integer> offsets)
Find all array references in the next children that match the given
criteria.
|
static java.util.List<Xnode> |
XnodeUtil.getAllArrayReferencesInSiblings(Xnode from,
java.lang.String identifier)
Get all array references in the siblings of the given element.
|
static java.util.List<Xnode> |
XnodeUtil.getAllVarReferences(Xnode parent,
java.lang.String varName)
Find all var references elements in a given body and give var name.
|
static java.util.List<Xnode> |
XnodeUtil.getArrayAssignInBlock(Xnode from,
java.lang.String endPragma)
Find all assignment statement from a node until the end pragma.
|
static Xnode |
XnodeUtil.getFirstArrayAssign(Xnode from,
java.lang.String arrayName)
Get the first assignment statement for an array reference.
|
static java.util.List<Xnode> |
XnodeUtil.getIdxRangesFromArrayRef(Xnode arrayRef)
Retrieve the index ranges of an array notation.
|
static java.util.List<Xnode> |
XnodeUtil.getNodes(Xnode root,
java.util.List<Xcode> nodeOpcodes)
Get given statements in the subtree.
|
static java.util.List<Xnode> |
XnodeUtil.getNodes(Xnode from,
Xnode to,
java.util.List<Xcode> nodeOpcodes)
Get given statements in between from and to included.
|
static boolean |
XnodeUtil.isInductionIndex(Xnode arrayIndex,
java.util.List<java.lang.String> inductionVariables)
Check whether the index of an arrayIndex element is an induction variable
given in the list.
|
static void |
XnodeUtil.safeDelete(Xnode node)
Delete a node in the ast.
|
Modifier and Type | Method and Description |
---|---|
static java.util.Set<java.lang.String> |
XnodeUtil.getNamesFromReferences(java.util.List<Xnode> nodes)
Get all the variables names from a list of var elements.
|
Modifier and Type | Class and Description |
---|---|
class |
XcodeML
The XcodeML class represents the basic XcodeML file unit.
|
class |
XcodeProgram
The XcodeProgram represents the XcodeProgram (2) element in XcodeML
intermediate representation.
|
class |
XdeclTable
The XdeclTable represents the typeTable (5.2) element in XcodeML intermediate
representation.
|
class |
XglobalDeclTable
The XglobalDeclTable represents the typeTable (5.1) element in XcodeML
intermediate representation.
|
class |
Xid
The Xid represents the id (8.2) element in XcodeML intermediate
representation.
|
class |
XsymbolTable
The XsymbolTable represents the symbols (4) element in XcodeML intermediate
representation.
|
class |
XtypeTable
The XtypeTable represents the typeTable (3.1) element in XcodeML intermediate
representation.
|
Modifier and Type | Method and Description |
---|---|
Xnode |
Xnode.ancestor()
Get ancestor node if any.
|
Xnode |
Xnode.body()
Get the inner body element.
|
Xnode |
Xnode.child(int pos)
Get child at position.
|
Xnode |
Xnode.cloneNode()
Clone the current element with all its children.
|
Xnode |
XcodeML.createAndAddParam(java.lang.String nameValue,
java.lang.String type,
FfunctionType fctType)
Create a name node and adds it as a parameter of the given function
type.
|
Xnode |
XcodeML.createAndAddParamIfNotExists(java.lang.String nameValue,
java.lang.String type,
FfunctionType fctType)
Create a name node and adds it as a parameter of the given function
type if this parameter does not exist yet.
|
Xnode |
XcodeML.createArrayRef(FbasicType type,
Xnode var)
Create a new FarrayRef node with varRef node as a child with the
given Var element.
|
Xnode |
XcodeML.createDoStmt(Xnode inductionVar,
Xnode indexRange)
Create a new FdoStatement node with an empty body.
|
Xnode |
XcodeML.createEmptyAssumedShaped()
Create an empty assumed shape indexRange node.
|
Xnode |
XcodeML.createFctCall(java.lang.String returnType,
java.lang.String fctName,
java.lang.String fctType)
Create a new functionCall node with name and arguments as children nodes.
|
Xnode |
XcodeML.createIfThen()
Create a new FifStatement node with an empty condition and then body.
|
Xnode |
XcodeML.createIntConstant(int value)
Create a FintConstant node with the given value.
|
Xnode |
XcodeML.createName(java.lang.String value,
java.lang.String type)
Constructs a new name node with name value and optional type.
|
Xnode |
XcodeML.createNamedValue(java.lang.String value)
Create a new namedValue node with its attribute.
|
Xnode |
XcodeML.createNode(Xcode opcode)
Create a new node in the current translation unit.
|
Xnode |
XcodeML.createPrintStatement(java.lang.String format,
java.lang.String[] charConstants)
Create a print statement with the given char constants.
|
Xnode |
XcodeML.createRangeForAssumedShapeArray(Xnode arrayVar,
int startIndex,
int dimension)
Create an indexRange element to loop over an assumed shape array.
|
Xnode |
XcodeML.createVar(FortranType type,
java.lang.String value,
Xscope scope)
Create a new var node.
|
Xnode |
XcodeML.createVar(java.lang.String type,
java.lang.String value,
Xscope scope)
Create a new var node.
|
Xnode |
XcodeML.createVarDecl(FortranType nameType,
java.lang.String nameValue)
Create a new varDecl node with all the mandatory nodes.
|
Xnode |
XcodeML.createVarDecl(java.lang.String varType,
java.lang.String varId)
Create a new varDecl node with all the mandatory nodes.
|
Xnode |
Xnode.firstChild()
Get the first child node.
|
protected Xnode |
XtypeTable.get(java.lang.String hash)
Get an element from the type table.
|
Xnode |
XdeclTable.get(java.lang.String key)
Get a specific declaration based on its name.
|
Xnode |
XcodeML.importConstOrVar(Xnode base,
XcodeML xcodemlSrc)
Create a copy of a variable element or an integer constant from a XcodeML
unit to this unit.
|
Xnode |
XcodeML.importNode(Xnode node)
Import node to current XcodeML translation unit.
|
Xnode |
Xnode.lastChild()
Get the last child node.
|
Xnode |
Xnode.matchAncestor(Xcode opcode)
Find node with the given opcode in the ancestors of the current node.
|
Xnode |
Xnode.matchDescendant(Xcode opcode)
Find node with the given opcode in the descendants of the current node.
|
Xnode |
Xnode.matchDirectDescendant(java.util.List<Xcode> opcodes)
Find node with one of the given opcodes in the direct descendants
the current node.
|
Xnode |
Xnode.matchDirectDescendant(Xcode opcode)
Find node with the given opcode in the direct descendants the current node.
|
Xnode |
Xnode.matchSeq(Xcode... opcodes)
Find node with the given path of opcodes from the current node.
|
Xnode |
Xnode.matchSibling(Xcode opcode)
Find node with the given opcode in the siblings of the given node.
|
Xnode |
Xnode.nextSibling()
Get next sibling node.
|
Xnode |
Xnode.prevSibling()
Get previous sibling node.
|
Modifier and Type | Method and Description |
---|---|
java.util.List<Xnode> |
Xnode.children()
Get the list of child elements.
|
java.util.List<Xnode> |
XcodeML.createPragma(java.lang.String value,
int maxColumn)
Create a list of FpragmaStatement with correct line continuation symbols.
|
java.util.List<Xnode> |
Xnode.matchAll(Xcode opcode)
Match all nodes with the given opcode in the subtree.
|
java.util.List<Xnode> |
Xnode.matchAllAncestor(Xcode opcode)
Find nodes with the given opcode in the ancestors of the current node.
|
java.util.List<Xnode> |
Xnode.matchAllAncestor(Xcode opcode,
Xcode stopCode)
Find nodes with the given opcode in the ancestors of the current node.
|
java.util.List<Xnode> |
XdeclTable.uses()
Get all the use and use only declaration in the table.
|
java.util.Collection<Xnode> |
XtypeTable.values()
Returns a Collection view of the values contained in this XtypeTable.
|
java.util.List<Xnode> |
XdeclTable.values()
Get all elements in the table.
|
java.util.List<Xnode> |
XdeclTable.values(java.util.List<Xcode> declarations)
Get all declarations of a specific kind of elements.
|
java.util.List<Xnode> |
XdeclTable.values(Xcode decl)
Get all declarations of a specific kind of elements.
|
Modifier and Type | Method and Description |
---|---|
void |
XtypeTable.add(Xnode type)
Add a new element in the type table.
|
void |
XdeclTable.add(Xnode decl)
Add a new declaration as last element.
|
void |
XdeclTable.addFirst(Xnode decl)
Add a new declaration as last element.
|
void |
Xnode.append(Xnode node)
Append an element ot the children of this element.
|
void |
Xnode.append(Xnode node,
boolean clone)
Append an element ot the children of this element.
|
boolean |
Xnode.compareFirstChildValues(Xnode other)
Compare the inner value of the first child of two nodes.
|
boolean |
Xnode.compareOptionalValues(Xnode other)
Compare the inner values of two optional nodes.
|
boolean |
Xnode.compareValues(Xnode other)
Compare the inner values of two nodes.
|
void |
Xnode.copyAttribute(Xnode to,
Xattr attr)
Copy the attribute from the current node to the given node.
|
void |
Xnode.copyEnhancedInfo(Xnode target)
Copy the enhanced information from the current node to a target node.
|
Xnode |
XcodeML.createArrayRef(FbasicType type,
Xnode var)
Create a new FarrayRef node with varRef node as a child with the
given Var element.
|
Xnode |
XcodeML.createDoStmt(Xnode inductionVar,
Xnode indexRange)
Create a new FdoStatement node with an empty body.
|
Xnode |
XcodeML.createRangeForAssumedShapeArray(Xnode arrayVar,
int startIndex,
int dimension)
Create an indexRange element to loop over an assumed shape array.
|
FbasicType |
XtypeTable.getBasicType(Xnode node)
Get the FbasicType associated with the node if any.
|
FfunctionType |
XtypeTable.getFunctionType(Xnode node)
Get the FfunctionType associated with the node if any.
|
FstructType |
XtypeTable.getStructType(Xnode node)
Get the FstructType associated with the node if any.
|
boolean |
Xnode.hasSameParentBlock(Xnode n)
Check if the given node is direct children of the same parent node.
|
Xnode |
XcodeML.importConstOrVar(Xnode base,
XcodeML xcodemlSrc)
Create a copy of a variable element or an integer constant from a XcodeML
unit to this unit.
|
Xnode |
XcodeML.importNode(Xnode node)
Import node to current XcodeML translation unit.
|
void |
Xnode.insert(Xnode node)
Insert as first child.
|
void |
Xnode.insert(Xnode node,
boolean clone)
Insert as first child.
|
void |
Xnode.insertAfter(Xnode node)
Insert a node just after this node.
|
void |
Xnode.insertBefore(Xnode node)
Insert a node just before this node.
|
boolean |
XtypeTable.isBasicType(Xnode node)
Check if the node is of type FbasicType.
|
boolean |
Xnode.isDirectSibling(Xnode end,
java.util.List<Xcode> skippedNodes)
Check whether the end node is a direct sibling of this node.
|
boolean |
XtypeTable.isFunctionType(Xnode node)
Check if the node is of type FfunctionType.
|
boolean |
Xnode.isNestedIn(Xnode ancestor)
Check whether a node is nested into another one.
|
boolean |
XtypeTable.isStructType(Xnode node)
Check if the hash correspond to a FstructType.
|
void |
XdeclTable.replace(Xnode decl,
java.lang.String name)
Replace a declaration in the table.
|
Constructor and Description |
---|
XdeclTable(Xnode node)
Element standard ctor.
|
XglobalDeclTable(Xnode node)
Element standard ctor.
|
Xid(Xnode node)
Element standard ctor.
|
XsymbolTable(Xnode node)
Element standard ctor.
|
XtypeTable(Xnode node)
Element standard ctor.
|
Modifier and Type | Class and Description |
---|---|
class |
FbasicType
The FbasicType represents the FbasicType (3.3) element in XcodeML
intermediate representation.
|
class |
FfunctionDefinition
The FfunctionDefinition represents the FfunctionDefinition (5.3) element in
XcodeML intermediate representation.
|
class |
FfunctionType
The FfunctionType represents the FfunctionType (3.4) element in XcodeML
intermediate representation.
|
class |
FmoduleDefinition
The FmoduleDefinition represents the FmoduleDefinition (5.7) element in
XcodeML intermediate representation.
|
class |
FortranModule
The FortranModule represents the module information produced by the Fortran front-end
of OMNI Compiler.
|
class |
FstructType
The FstructType class represents the FstructType (3.5) element in XcodeML/F.
|
Modifier and Type | Method and Description |
---|---|
Xnode |
FbasicType.getDimensions(int index)
Get the indexRange object for the given dimension.
|
Xnode |
FbasicType.getKind()
Get the kind element.
|
Xnode |
FbasicType.getLength()
Get the len element.
|
Xnode |
FfunctionDefinition.getParams()
Get the parameters list.
|
Xnode |
FfunctionDefinition.name()
Get the name node.
|
Modifier and Type | Method and Description |
---|---|
java.util.List<Xnode> |
FfunctionType.getParameters()
Get the list of all parameters name node.
|
Modifier and Type | Method and Description |
---|---|
void |
FbasicType.addDimension(Xnode index) |
void |
FbasicType.addDimension(Xnode index,
int position)
Add a dimension to the basic type.
|
void |
FfunctionType.addParameters(Xnode name)
Add a name element to the parameters list.
|
void |
FfunctionType.addParameters(Xnode ref,
Xnode name)
Add a name element to the parameters list before the referenced element.
|
Constructor and Description |
---|
FbasicType(Xnode node)
Element standard ctor.
|
FfunctionDefinition(Xnode node)
Constructs new FfunctionDefinition instance.
|
FfunctionType(Xnode node)
Basic ctor from Xnode.
|
FmoduleDefinition(Xnode node)
Element standard ctor.
|
FstructType(Xnode node)
Basic ctor from Xnode.
|
Modifier and Type | Method and Description |
---|---|
static ClawPragma |
ClawPragma.analyze(Xnode pragma)
Analyze a raw string input and match it with the CLAW language definition.
|
static ClawPragma |
ClawPragma.createLoopInterchangeLanguage(ClawPragma master,
Xnode pragma)
Create an instance of ClawPragma that correspond to a loop-interchange
directive.
|
boolean |
ClawRange.equals(Xnode doStmt)
Compare a ClawRange with a do statement.
|
static boolean |
ClawPragma.startsWithClaw(Xnode pragma)
Check if the pragma statement starts with the claw keyword.
|
Constructor and Description |
---|
ClawPragma(Xnode pragma)
Constructs an empty ClawPragma object with an attached pragma.
|
Constructor and Description |
---|
LoopFusion(Xnode loop,
ClawPragma ghostDirective)
LoopFusion ctor without pragma.
|
Modifier and Type | Method and Description |
---|---|
void |
ClawTranslator.generateAdditionalTransformation(ClawPragma claw,
XcodeProgram xcodeml,
Xnode stmt)
Generate corresponding additional transformation according to optional
clauses given to the directive.
|
void |
ClawTranslator.generateTransformation(XcodeProgram xcodeml,
Xnode pragma) |
java.lang.Object |
ClawTranslator.hasElement(Xnode key)
Get a stored element from a previous transformation.
|
boolean |
ClawTranslator.isHandledPragma(Xnode pragma) |
void |
ClawTranslator.storeElement(Xnode key,
java.lang.Object value)
Store a Xnode from a transformation for a possible usage in another
transformation.
|