LLVM  8.0.1
Classes | Namespaces
ObjCARCAliasAnalysis.h File Reference

This file declares a simple ARC-aware AliasAnalysis using special knowledge of Objective C to enhance other optimization passes which rely on the Alias Analysis infrastructure. More...

#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/Pass.h"
Include dependency graph for ObjCARCAliasAnalysis.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::objcarc::ObjCARCAAResult
 This is a simple alias analysis implementation that uses knowledge of ARC constructs to answer queries. More...
 
class  llvm::objcarc::ObjCARCAA
 Analysis pass providing a never-invalidated alias analysis result. More...
 
class  llvm::objcarc::ObjCARCAAWrapperPass
 Legacy wrapper pass to provide the ObjCARCAAResult object. More...
 

Namespaces

 llvm
 This class represents lattice values for constants.
 
 llvm::objcarc
 

Detailed Description

This file declares a simple ARC-aware AliasAnalysis using special knowledge of Objective C to enhance other optimization passes which rely on the Alias Analysis infrastructure.

WARNING: This file knows about certain library functions. It recognizes them by name, and hardwires knowledge of their semantics.

WARNING: This file knows about how certain Objective-C library functions are used. Naive LLVM IR transformations which would otherwise be behavior-preserving may break these assumptions.

Definition in file ObjCARCAliasAnalysis.h.