LLVM  mainline
Namespaces | Functions
ObjCARC.h File Reference

This file defines common definitions/declarations used by the ObjC ARC Optimizer. More...

#include "llvm/ADT/StringSwitch.h"
#include "llvm/ADT/Optional.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/Analysis/ObjCARCAnalysisUtils.h"
#include "llvm/Analysis/ObjCARCInstKind.h"
#include "llvm/Analysis/Passes.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/CallSite.h"
#include "llvm/IR/InstIterator.h"
#include "llvm/IR/Module.h"
#include "llvm/Pass.h"
#include "llvm/Transforms/ObjCARC.h"
#include "llvm/Transforms/Utils/Local.h"
Include dependency graph for lib/Transforms/ObjCARC/ObjCARC.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  llvm
 

Compute iterated dominance frontiers using a linear time algorithm.


namespace  llvm::objcarc

Functions

static void llvm::objcarc::EraseInstruction (Instruction *CI)
 Erase the given instruction.

Detailed Description

This file defines common definitions/declarations used by the ObjC ARC Optimizer.

ARC stands for Automatic Reference Counting and is a system for managing reference counts for objects in Objective C.

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 lib/Transforms/ObjCARC/ObjCARC.h.