|
LLVM
8.0.1
|
This file defines 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/ObjCARCAliasAnalysis.h"#include "llvm/Analysis/ObjCARCAnalysisUtils.h"#include "llvm/IR/Function.h"#include "llvm/IR/Instruction.h"#include "llvm/IR/Value.h"#include "llvm/InitializePasses.h"#include "llvm/PassAnalysisSupport.h"#include "llvm/PassSupport.h"
Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "objc-arc-aa" |
Functions | |
| INITIALIZE_PASS (ObjCARCAAWrapperPass, "objc-arc-aa", "ObjC-ARC-Based Alias Analysis", false, true) ImmutablePass *llvm | |
This file defines 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.
TODO: Theoretically we could check for dependencies between objc_* calls and FMRB_OnlyAccessesArgumentPointees calls or other well-behaved calls.
Definition in file ObjCARCAliasAnalysis.cpp.
Definition at line 35 of file ObjCARCAliasAnalysis.cpp.
| INITIALIZE_PASS | ( | ObjCARCAAWrapperPass | , |
| "objc-arc-aa" | , | ||
| "ObjC-ARC-Based Alias Analysis" | , | ||
| false | , | ||
| true | |||
| ) |
Definition at line 139 of file ObjCARCAliasAnalysis.cpp.
1.8.13