summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2017-03-17 20:41:45 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2017-03-17 20:41:45 +0000
commitc5b641ac027dc2f281783a41d29fc987184356c0 (patch)
treef2a818ccfda850e7dc51810b941a54a4241db66d /llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp
parent455703a0c67d404b35abbdec1071855ebf387d3b (diff)
downloadbcm5719-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.cpp4
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");
}
OpenPOWER on IntegriCloud