FLANG
Classes | Public Member Functions | Friends | List of all members
fir::AliasAnalysis Struct Reference

Classes

struct  Source
 

Public Member Functions

 ENUM_CLASS (SourceKind, Allocate, Global, Argument, HostAssoc, Indirect, Unknown)
 Kind of the memory source referenced by a value.
 
 ENUM_CLASS (Attribute, Target, Pointer, IntentIn)
 Attributes of the memory source object.
 
mlir::AliasResult alias (Source lhsSrc, Source rhsSrc, mlir::Value lhs, mlir::Value rhs)
 Given the values and their sources, return their aliasing behavior.
 
mlir::AliasResult alias (mlir::Value lhs, mlir::Value rhs)
 Given two values, return their aliasing behavior.
 
mlir::ModRefResult getModRef (mlir::Operation *op, mlir::Value location)
 Return the modify-reference behavior of op on location.
 
mlir::ModRefResult getModRef (mlir::Region &region, mlir::Value location)
 
fir::AliasAnalysis::Source getSource (mlir::Value, bool getLastInstantiationPoint=false)
 

Friends

llvm::raw_ostream & operator<< (llvm::raw_ostream &os, const AliasAnalysis::Source &op)
 

Member Function Documentation

◆ getModRef()

ModRefResult fir::AliasAnalysis::getModRef ( mlir::Region &  region,
mlir::Value  location 
)

Return the modify-reference behavior of operations inside region on location. Contrary to getModRef(operation, location), this will visit nested regions recursively according to the HasRecursiveMemoryEffects trait.

◆ getSource()

AliasAnalysis::Source fir::AliasAnalysis::getSource ( mlir::Value  v,
bool  getLastInstantiationPoint = false 
)

Return the memory source of a value. If getLastInstantiationPoint is true, the search for the source will stop at [hl]fir.declare if it represents a dummy argument declaration (i.e. it has the dummy_scope operand).


The documentation for this struct was generated from the following files: