From d288ef4c1788d3a951a7558c68312c2d320612b1 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Sat, 3 Jun 2017 15:20:36 +0000 Subject: Vendor import of llvm trunk r304659: https://llvm.org/svn/llvm-project/llvm/trunk@304659 --- lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp') diff --git a/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp b/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp index 57905be18813..267f4807a788 100644 --- a/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp +++ b/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp @@ -28,11 +28,16 @@ using namespace llvm; AMDGPULegalizerInfo::AMDGPULegalizerInfo() { using namespace TargetOpcode; + const LLT S1= LLT::scalar(1); const LLT S32 = LLT::scalar(32); const LLT S64 = LLT::scalar(64); const LLT P1 = LLT::pointer(1, 64); const LLT P2 = LLT::pointer(2, 64); + // FIXME: i1 operands to intrinsics should always be legal, but other i1 + // values may not be legal. We need to figure out how to distinguish + // between these two scenarios. + setAction({G_CONSTANT, S1}, Legal); setAction({G_CONSTANT, S32}, Legal); setAction({G_CONSTANT, S64}, Legal); -- cgit v1.3