LLVM
8.0.1
|
This file defines several utility functions used by various ARC optimizations which are IMHO too big to be in a header file. More...
#include "llvm/Analysis/ObjCARCInstKind.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/Analysis/ObjCARCAnalysisUtils.h"
#include "llvm/IR/Intrinsics.h"
Go to the source code of this file.
Functions | |
static bool | isInertIntrinsic (unsigned ID) |
static bool | isUseOnlyIntrinsic (unsigned ID) |
This file defines several utility functions used by various ARC optimizations which are IMHO too big to be in a header file.
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 ObjCARCInstKind.cpp.
Definition at line 159 of file ObjCARCInstKind.cpp.
References llvm::Intrinsic::addressofreturnaddress, llvm::Intrinsic::adjust_trampoline, llvm::Intrinsic::dbg_declare, llvm::Intrinsic::dbg_label, llvm::Intrinsic::dbg_value, llvm::Intrinsic::eh_dwarf_cfa, llvm::Intrinsic::eh_return_i32, llvm::Intrinsic::eh_return_i64, llvm::Intrinsic::eh_sjlj_functioncontext, llvm::Intrinsic::eh_sjlj_lsda, llvm::Intrinsic::eh_typeid_for, llvm::Intrinsic::frameaddress, llvm::Intrinsic::init_trampoline, llvm::Intrinsic::invariant_end, llvm::Intrinsic::invariant_start, llvm::Intrinsic::lifetime_end, llvm::Intrinsic::lifetime_start, llvm::Intrinsic::objectsize, llvm::Intrinsic::prefetch, llvm::Intrinsic::returnaddress, llvm::Intrinsic::stackprotector, llvm::Intrinsic::stackrestore, llvm::Intrinsic::stacksave, llvm::Intrinsic::vacopy, llvm::Intrinsic::vaend, and llvm::Intrinsic::vastart.
Referenced by llvm::objcarc::GetARCInstKind().
Definition at line 198 of file ObjCARCInstKind.cpp.
References llvm::Intrinsic::memcpy, llvm::Intrinsic::memmove, and llvm::Intrinsic::memset.
Referenced by llvm::objcarc::GetARCInstKind().