FLANG
Public Member Functions | List of all members
fir::factory::AnyVectorSubscriptStack Class Reference

#include <flang/Optimizer/Builder/TemporaryStorage.h>

Inheritance diagram for fir::factory::AnyVectorSubscriptStack:
fir::factory::AnyVariableStack

Public Member Functions

 AnyVectorSubscriptStack (mlir::Location loc, fir::FirOpBuilder &builder, mlir::Type valueStaticType, bool shapeCanBeSavedAsRegister, int rank)
 
void pushShape (mlir::Location loc, fir::FirOpBuilder &builder, mlir::Value shape)
 
void resetFetchPosition (mlir::Location loc, fir::FirOpBuilder &builder)
 
mlir::Value fetchShape (mlir::Location loc, fir::FirOpBuilder &builder)
 
void destroy (mlir::Location loc, fir::FirOpBuilder &builder)
 
bool canBeFetchedAfterPush () const
 
- Public Member Functions inherited from fir::factory::AnyVariableStack
 AnyVariableStack (mlir::Location loc, fir::FirOpBuilder &builder, mlir::Type valueStaticType)
 
void pushValue (mlir::Location loc, fir::FirOpBuilder &builder, mlir::Value value)
 
void resetFetchPosition (mlir::Location loc, fir::FirOpBuilder &builder)
 
mlir::Value fetch (mlir::Location loc, fir::FirOpBuilder &builder)
 
void destroy (mlir::Location loc, fir::FirOpBuilder &builder)
 
bool canBeFetchedAfterPush () const
 

Detailed Description

Data structure to stack vector subscripted entity shape and element addresses. AnyVariableStack allows saving vector subscripted entities element addresses, but when saving several vector subscripted entities on a stack, and if the context does not allow retrieving the vector subscript entities shapes, these shapes must be saved too.


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