FLANG
Public Member Functions | Public Attributes | List of all members
Fortran::lower::pft::Variable::AggregateStore Struct Reference

#include <flang/Lower/PFTBuilder.h>

Public Member Functions

 AggregateStore (Interval &&interval, const Fortran::semantics::Symbol &namingSym, bool isGlobal=false)
 
 AggregateStore (const semantics::Symbol &initialValueSym, const semantics::Symbol &namingSym, bool isGlobal=false)
 
bool isGlobal () const
 
std::size_t getOffset () const
 Get offset of the aggregate inside its scope.
 
const semantics::SymbolgetInitialValueSymbol () const
 Returns symbols holding the aggregate initial value if any.
 
const semantics::SymbolgetNamingSymbol () const
 Returns the symbol that gives its name to the aggregate.
 
const semantics::ScopegetOwningScope () const
 Scope to which the aggregates belongs to.
 

Public Attributes

Interval interval {}
 <offset, size> of the aggregate in its scope.
 
const semantics::SymbolnamingSymbol
 Symbol that gives its name to the aggregate. Always set by constructor.
 
const semantics::SymbolinitialValueSymbol = nullptr
 Compiler generated symbol with the aggregate initial value if any.
 
bool isGlobalAggregate
 Is this a global aggregate?
 

Detailed Description

An interval of storage is a contiguous block of memory to be allocated or mapped onto another variable. Aliasing variables will be pointers into interval stores and may overlap each other.


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