summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
diff options
context:
space:
mode:
authorMarek Olsak <marek.olsak@amd.com>2015-10-29 15:29:09 +0000
committerMarek Olsak <marek.olsak@amd.com>2015-10-29 15:29:09 +0000
commit6f6d318e16642c1860f3693cd2a7e82133fe2746 (patch)
tree7d79b9d7fe82e818df4976de0d32c24320884bcf /llvm/lib/Target/AMDGPU/SIISelLowering.cpp
parent74d084f466c3d9824dcd51b9b865b5721504bca6 (diff)
downloadbcm5719-llvm-6f6d318e16642c1860f3693cd2a7e82133fe2746.tar.gz
bcm5719-llvm-6f6d318e16642c1860f3693cd2a7e82133fe2746.zip
AMDGPU/SI: handle undef for llvm.SI.packf16
llvm-svn: 251632
Diffstat (limited to 'llvm/lib/Target/AMDGPU/SIISelLowering.cpp')
-rw-r--r--llvm/lib/Target/AMDGPU/SIISelLowering.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
index c9bc352703c..3cddafc465d 100644
--- a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+++ b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
@@ -1091,6 +1091,10 @@ SDValue SITargetLowering::LowerINTRINSIC_WO_CHAIN(SDValue Op,
DAG.getConstant(2, DL, MVT::i32), // P0
Op.getOperand(1), Op.getOperand(2), Glue);
}
+ case AMDGPUIntrinsic::SI_packf16:
+ if (Op.getOperand(1).isUndef() && Op.getOperand(2).isUndef())
+ return DAG.getUNDEF(MVT::i32);
+ return Op;
case AMDGPUIntrinsic::SI_fs_interp: {
SDValue IJ = Op.getOperand(4);
SDValue I = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, MVT::i32, IJ,
OpenPOWER on IntegriCloud