From edb4a6ba982df35c02a6418fa9faf091459a306f Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Tue, 26 Apr 2016 05:04:33 +0000 Subject: [ARM] Expand v1i64 and v2i64 ctlz. The default is legal, which results in 'Cannot select' errors. llvm-svn: 267520 --- llvm/lib/Target/ARM/ARMISelLowering.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'llvm/lib/Target/ARM/ARMISelLowering.cpp') diff --git a/llvm/lib/Target/ARM/ARMISelLowering.cpp b/llvm/lib/Target/ARM/ARMISelLowering.cpp index 73571ff993a..13a233d4ecd 100644 --- a/llvm/lib/Target/ARM/ARMISelLowering.cpp +++ b/llvm/lib/Target/ARM/ARMISelLowering.cpp @@ -580,6 +580,9 @@ ARMTargetLowering::ARMTargetLowering(const TargetMachine &TM, setOperationAction(ISD::CTPOP, MVT::v1i64, Expand); setOperationAction(ISD::CTPOP, MVT::v2i64, Expand); + setOperationAction(ISD::CTLZ, MVT::v1i64, Expand); + setOperationAction(ISD::CTLZ, MVT::v2i64, Expand); + // NEON does not have single instruction CTTZ for vectors. setOperationAction(ISD::CTTZ, MVT::v8i8, Custom); setOperationAction(ISD::CTTZ, MVT::v4i16, Custom); -- cgit v1.2.3