FLANG
fir::TBAATree Struct Reference

#include <flang/Optimizer/Analysis/TBAAForest.h>

Classes

class  SubtreeState

Static Public Member Functions

static TBAATree buildTree (mlir::StringAttr functionName)

Public Attributes

SubtreeState targetDataTree
SubtreeState globalDataTree
 A subtree for global variables data (e.g. user module variables).
SubtreeState allocatedDataTree
 A subtree for variables allocated via fir.alloca or fir.allocmem.
SubtreeState dummyArgDataTree
SubtreeState directDataTree
 A subtree for global variables descriptors.
mlir::LLVM::TBAATypeDescriptorAttr anyAccessDesc
mlir::LLVM::TBAATypeDescriptorAttr boxMemberTypeDesc
mlir::LLVM::TBAATypeDescriptorAttr anyDataTypeDesc

Detailed Description

Per-function TBAA tree. Each tree contains branches for data (of various kinds) and descriptor access

Member Data Documentation

◆ dummyArgDataTree

SubtreeState fir::TBAATree::dummyArgDataTree

A subtree for subprogram's dummy arguments. It only contains children for the dummy arguments that are not POINTER/TARGET. They all do not conflict with each other and with any other data access, except with unknown data accesses (FIR alias analysis uses SourceKind::Indirect for sources of such accesses).

◆ targetDataTree

SubtreeState fir::TBAATree::targetDataTree

A subtree for POINTER/TARGET variables data. Any POINTER variable must use a tag that points to the root of this subtree. A TARGET dummy argument must also point to this root.


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