LLVM  6.0.0svn
Public Member Functions | Public Attributes | List of all members
llvm::AAMDNodes Struct Reference

A collection of metadata nodes that might be associated with a memory access used by the alias-analysis infrastructure. More...

#include "llvm/IR/Metadata.h"

Collaboration diagram for llvm::AAMDNodes:
Collaboration graph
[legend]

Public Member Functions

 AAMDNodes (MDNode *T=nullptr, MDNode *S=nullptr, MDNode *N=nullptr)
 
bool operator== (const AAMDNodes &A) const
 
bool operator!= (const AAMDNodes &A) const
 
 operator bool () const
 
AAMDNodes intersect (const AAMDNodes &Other)
 Given two sets of AAMDNodes that apply to the same pointer, give the best AAMDNodes that are compatible with both (i.e. More...
 

Public Attributes

MDNodeTBAA
 The tag for type-based alias analysis. More...
 
MDNodeScope
 The tag for alias scope specification (used with noalias). More...
 
MDNodeNoAlias
 The tag specifying the noalias scope. More...
 

Detailed Description

A collection of metadata nodes that might be associated with a memory access used by the alias-analysis infrastructure.

Definition at line 642 of file Metadata.h.

Constructor & Destructor Documentation

◆ AAMDNodes()

llvm::AAMDNodes::AAMDNodes ( MDNode T = nullptr,
MDNode S = nullptr,
MDNode N = nullptr 
)
inlineexplicit

Definition at line 643 of file Metadata.h.

Member Function Documentation

◆ intersect()

AAMDNodes llvm::AAMDNodes::intersect ( const AAMDNodes Other)
inline

Given two sets of AAMDNodes that apply to the same pointer, give the best AAMDNodes that are compatible with both (i.e.

a set of nodes whose allowable aliasing conclusions are a subset of those allowable by both of the inputs). However, for efficiency reasons, do not create any new MDNodes.

Definition at line 669 of file Metadata.h.

References llvm::NoAlias, NoAlias, Scope, and TBAA.

◆ operator bool()

llvm::AAMDNodes::operator bool ( ) const
inlineexplicit

Definition at line 653 of file Metadata.h.

References llvm::NoAlias.

◆ operator!=()

bool llvm::AAMDNodes::operator!= ( const AAMDNodes A) const
inline

Definition at line 651 of file Metadata.h.

◆ operator==()

bool llvm::AAMDNodes::operator== ( const AAMDNodes A) const
inline

Definition at line 647 of file Metadata.h.

References llvm::NoAlias, NoAlias, Scope, and TBAA.

Member Data Documentation

◆ NoAlias

MDNode* llvm::AAMDNodes::NoAlias

◆ Scope

MDNode* llvm::AAMDNodes::Scope

◆ TBAA

MDNode* llvm::AAMDNodes::TBAA

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