From 574e767a209bc80c3a6f41300ab4cf3f1c426ce1 Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Tue, 19 Dec 2017 06:28:58 +0000 Subject: [PATCH] [X86] Remove unnecessary check for integer VT from combineShiftRightArithmetic. I doubt there's any way to create a ashr for an FP type. llvm-svn: 321057 --- lib/Target/X86/X86ISelLowering.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index 93fc6c6b61f..815b3594729 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/lib/Target/X86/X86ISelLowering.cpp @@ -32551,7 +32551,7 @@ static SDValue combineShiftRightArithmetic(SDNode *N, SelectionDAG &DAG) { // 1. MOVs can write to a register that differs from source // 2. MOVs accept memory operands - if (!VT.isInteger() || VT.isVector() || N1.getOpcode() != ISD::Constant || + if (VT.isVector() || N1.getOpcode() != ISD::Constant || N0.getOpcode() != ISD::SHL || !N0.hasOneUse() || N0.getOperand(1).getOpcode() != ISD::Constant) return SDValue();