LLVM API Documentation
#include "ObjCARC.h"
#include "ARCRuntimeEntryPoints.h"
#include "DependencyAnalysis.h"
#include "ProvenanceAnalysis.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/InlineAsm.h"
#include "llvm/IR/Operator.h"
#include "llvm/Support/Debug.h"
Go to the source code of this file.
Defines | |
#define | DEBUG_TYPE "objc-arc-contract" |
Functions | |
STATISTIC (NumPeeps,"Number of calls peephole-optimized") | |
STATISTIC (NumStoreStrongs,"Number objc_storeStrong calls formed") | |
INITIALIZE_PASS_BEGIN (ObjCARCContract,"objc-arc-contract","ObjC ARC contraction", false, false) INITIALIZE_PASS_END(ObjCARCContract | |
Variables | |
objc arc | contract |
objc arc ObjC ARC | contraction |
objc arc ObjC ARC | false |
This file defines late 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 mainly deals with ``contracting'' multiple lower level operations into singular higher level operations through pattern matching.
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 ObjCARCContract.cpp.
#define DEBUG_TYPE "objc-arc-contract" |
Definition at line 42 of file ObjCARCContract.cpp.
INITIALIZE_PASS_BEGIN | ( | ObjCARCContract | , |
"objc-arc-contract" | , | ||
"ObjC ARC contraction" | , | ||
false | , | ||
false | |||
) |
STATISTIC | ( | NumPeeps | , |
"Number of calls peephole-optimized" | |||
) |
STATISTIC | ( | NumStoreStrongs | , |
"Number objc_storeStrong calls formed" | |||
) |
Definition at line 101 of file ObjCARCContract.cpp.
objc arc ObjC ARC contraction |
Definition at line 101 of file ObjCARCContract.cpp.
Definition at line 101 of file ObjCARCContract.cpp.