From: Craig Topper Date: Thu, 15 Aug 2019 05:51:58 +0000 (+0000) Subject: [X86] Disable custom type legalization for v2i32/v4i16/v8i8->i64. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5016adc66159153df106415f066fb875d1a9ffb5;p=llvm [X86] Disable custom type legalization for v2i32/v4i16/v8i8->i64. The default legalization can take care of this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@368967 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index d232cb1f0b2..4779743378e 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/lib/Target/X86/X86ISelLowering.cpp @@ -26200,8 +26200,7 @@ static SDValue LowerBITCAST(SDValue Op, const X86Subtarget &Subtarget, SrcVT == MVT::i64) && "Unexpected VT!"); assert(Subtarget.hasSSE2() && "Requires at least SSE2!"); - if (DstVT != MVT::i64 && - !(DstVT == MVT::f64 && SrcVT == MVT::i64) && + if (!(DstVT == MVT::f64 && SrcVT == MVT::i64) && !(DstVT == MVT::x86mmx && SrcVT.isVector())) // This conversion needs to be expanded. return SDValue();