LLVM 17.0.0git
|
#include "llvm/CodeGen/PreISelIntrinsicLowering.h"
#include "llvm/Analysis/ObjCARCInstKind.h"
#include "llvm/Analysis/ObjCARCUtil.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Type.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/Casting.h"
Go to the source code of this file.
Functions | |
static bool | lowerLoadRelative (Function &F) |
static CallInst::TailCallKind | getOverridingTailCallKind (const Function &F) |
static bool | lowerObjCCall (Function &F, const char *NewFn, bool setNonLazyBind=false) |
static bool | lowerIntrinsics (Module &M) |
INITIALIZE_PASS (PreISelIntrinsicLoweringLegacyPass, "pre-isel-intrinsic-lowering", "Pre-ISel Intrinsic Lowering", false, false) ModulePass *llvm | |
|
static |
Definition at line 62 of file PreISelIntrinsicLowering.cpp.
References F, llvm::objcarc::GetFunctionClass(), llvm::objcarc::IsAlwaysTail(), llvm::objcarc::IsNeverTail(), llvm::CallInst::TCK_None, llvm::CallInst::TCK_NoTail, and llvm::CallInst::TCK_Tail.
Referenced by lowerObjCCall().
INITIALIZE_PASS | ( | PreISelIntrinsicLoweringLegacyPass | , |
"pre-isel-intrinsic-lowering" | , | ||
"Pre-ISel Intrinsic Lowering" | , | ||
false | , | ||
false | |||
) |
Definition at line 240 of file PreISelIntrinsicLowering.cpp.
Definition at line 136 of file PreISelIntrinsicLowering.cpp.
References F, lowerLoadRelative(), and lowerObjCCall().
Referenced by llvm::PreISelIntrinsicLoweringPass::run().
Definition at line 30 of file PreISelIntrinsicLowering.cpp.
References B, F, llvm::Type::getInt32Ty(), llvm::Type::getInt8Ty(), llvm::Type::getPointerTo(), Int32Ty, and llvm::make_early_inc_range().
Referenced by lowerIntrinsics().
Definition at line 71 of file PreISelIntrinsicLowering.cpp.
References assert(), Builder, F, llvm::objcarc::getAttachedARCFunctionKind(), llvm::FunctionCallee::getCallee(), getOverridingTailCallKind(), llvm::make_early_inc_range(), llvm::IntrinsicInst::mayLowerToFunctionCall(), llvm::Value::setName(), setNonLazyBind(), and llvm::CallInst::setTailCallKind().
Referenced by lowerIntrinsics().