LLVM: lib/Analysis/ObjCARCAnalysisUtils.cpp Source File (original) (raw)
Go to the documentation of this file.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
18
19using namespace llvm;
21
22
25 "enable-objc-arc-opts", cl::desc("enable/disable all ARC Optimizations"),
27
30
32 return false;
33
34
35 if (AA.pointsToConstantMemory(Op))
36 return false;
37
38
40 if (AA.pointsToConstantMemory(LI->getPointerOperand()))
41 return false;
42
43
44 return true;
45}
static cl::opt< bool, true > EnableARCOptimizations("enable-objc-arc-opts", cl::desc("enable/disable all ARC Optimizations"), cl::location(EnableARCOpts), cl::init(true), cl::Hidden)
This file defines common analysis utilities used by the ObjC ARC Optimizer.
An instruction for reading from memory.
LLVM Value Representation.
Abstract Attribute helper functions.
initializer< Ty > init(const Ty &Val)
LocationClass< Ty > location(Ty &L)
bool IsPotentialRetainableObjPtr(const Value *Op)
Test whether the given value is possible a retainable object pointer.
bool EnableARCOpts
A handy option to enable/disable all ARC Optimizations.
Definition ObjCARCAnalysisUtils.cpp:23
This is an optimization pass for GlobalISel generic memory operations.
decltype(auto) dyn_cast(const From &Val)
dyn_cast - Return the argument parameter cast to the specified type.
DWARFExpression::Operation Op