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