LLVM API Documentation

Namespaces | Defines | Functions
ObjCARCExpand.cpp File Reference
#include "ObjCARC.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/InstIterator.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Value.h"
#include "llvm/Pass.h"
#include "llvm/PassAnalysisSupport.h"
#include "llvm/PassRegistry.h"
#include "llvm/PassSupport.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
Include dependency graph for ObjCARCExpand.cpp:

Go to the source code of this file.

Namespaces

namespace  llvm
 

List of target independent CodeGen pass IDs.


Defines

#define DEBUG_TYPE   "objc-arc-expand"

Functions

 INITIALIZE_PASS (ObjCARCExpand,"objc-arc-expand","ObjC ARC expansion", false, false) Pass *llvm

Detailed Description

This file defines ObjC ARC optimizations. ARC stands for Automatic Reference Counting and is a system for managing reference counts for objects in Objective C.

This specific file deals with early optimizations which perform certain cleanup operations.

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 ObjCARCExpand.cpp.


Define Documentation

#define DEBUG_TYPE   "objc-arc-expand"

Definition at line 26 of file ObjCARCExpand.cpp.


Function Documentation

INITIALIZE_PASS ( ObjCARCExpand  ,
"objc-arc-expand"  ,
"ObjC ARC expansion"  ,
false  ,
false   
)

Definition at line 69 of file ObjCARCExpand.cpp.