diff options
author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2017-03-17 20:41:45 +0000 |
---|---|---|
committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2017-03-17 20:41:45 +0000 |
commit | c5b641ac027dc2f281783a41d29fc987184356c0 (patch) | |
tree | f2a818ccfda850e7dc51810b941a54a4241db66d /llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp | |
parent | 455703a0c67d404b35abbdec1071855ebf387d3b (diff) | |
download | bcm5719-llvm-c5b641ac027dc2f281783a41d29fc987184356c0.tar.gz bcm5719-llvm-c5b641ac027dc2f281783a41d29fc987184356c0.zip |
AMDGPU: Cleanup control flow intrinsics
Move backend internal intrinsics along with the rest of the
normal intrinsics, and use the Intrinsic::getDeclaration
API instead of manually constructing the type list.
It's surprising this was working before. fdiv.fast had
the wrong number of parameters. The control flow intrinsic
declaration attributes were not being applied, and
their types were inconsistent. The actual IR use types
did not match the declaration, and were closer to the
types used for the patterns. The brcond lowering
was changing the types, so introduce new nodes for those.
llvm-svn: 298119
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp')
-rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp b/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp index 8e3471bd208..fd08f8fe70f 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp @@ -55,10 +55,6 @@ FunctionType *AMDGPUIntrinsicInfo::getType(LLVMContext &Context, unsigned ID, ArrayRef<Type*> Tys) const { // FIXME: Re-use Intrinsic::getType machinery switch (ID) { - case AMDGPUIntrinsic::amdgcn_fdiv_fast: { - Type *F32Ty = Type::getFloatTy(Context); - return FunctionType::get(F32Ty, { F32Ty, F32Ty }, false); - } default: llvm_unreachable("unhandled intrinsic"); } |