LLVM
15.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/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 61 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 236 of file PreISelIntrinsicLowering.cpp.
|
static |
Definition at line 131 of file PreISelIntrinsicLowering.cpp.
References F, lowerLoadRelative(), lowerObjCCall(), and M.
Referenced by llvm::PreISelIntrinsicLoweringPass::run().
|
static |
Definition at line 29 of file PreISelIntrinsicLowering.cpp.
References Align, B, F, llvm::Type::getInt32Ty(), llvm::Type::getInt8Ty(), llvm::Type::getPointerTo(), Int32Ty, and llvm::make_early_inc_range().
Referenced by lowerIntrinsics().
Definition at line 70 of file PreISelIntrinsicLowering.cpp.
References llvm::AMDGPU::HSAMD::Kernel::Key::Args, assert(), Builder, F, llvm::objcarc::getAttachedARCFunctionKind(), llvm::FunctionCallee::getCallee(), getOverridingTailCallKind(), M, llvm::make_early_inc_range(), llvm::max(), llvm::objcarc::RetainRV, llvm::Value::setName(), setNonLazyBind(), llvm::CallInst::setTailCallKind(), and llvm::objcarc::UnsafeClaimRV.
Referenced by lowerIntrinsics().