summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86ISelLowering.cpp
diff options
context:
space:
mode:
authorCameron McInally <cameron.mcinally@nyu.edu>2014-06-16 14:12:28 +0000
committerCameron McInally <cameron.mcinally@nyu.edu>2014-06-16 14:12:28 +0000
commit0d0489cea6d940cba809e5895808ebfbc0424e3a (patch)
tree9291653496cbcdd99acfe85559c7293055b3cc8b /llvm/lib/Target/X86/X86ISelLowering.cpp
parent04278ece9e3162fa72421dd13de366fa67c8ff88 (diff)
downloadbcm5719-llvm-0d0489cea6d940cba809e5895808ebfbc0424e3a.tar.gz
bcm5719-llvm-0d0489cea6d940cba809e5895808ebfbc0424e3a.zip
Hook up vector int_ctlz for AVX512.
llvm-svn: 211024
Diffstat (limited to 'llvm/lib/Target/X86/X86ISelLowering.cpp')
-rw-r--r--llvm/lib/Target/X86/X86ISelLowering.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index 5e652e31823..851607eac96 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -1439,6 +1439,11 @@ void X86TargetLowering::resetOperationActions() {
setOperationAction(ISD::OR, MVT::v16i32, Legal);
setOperationAction(ISD::XOR, MVT::v16i32, Legal);
+ if (Subtarget->hasCDI()) {
+ setOperationAction(ISD::CTLZ, MVT::v8i64, Legal);
+ setOperationAction(ISD::CTLZ, MVT::v16i32, Legal);
+ }
+
// Custom lower several nodes.
for (int i = MVT::FIRST_VECTOR_VALUETYPE;
i <= MVT::LAST_VECTOR_VALUETYPE; ++i) {
OpenPOWER on IntegriCloud