From 433f6f62ca858c20d5d3f561e63818c2fda06ebe Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Thu, 6 Mar 2008 08:20:51 +0000 Subject: Constant fold SIGN_EXTEND_INREG with ashr not lshr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47992 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/SelectionDAG/SelectionDAG.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/CodeGen/SelectionDAG/SelectionDAG.cpp') diff --git a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp index dd1343590a..0dba4a44f5 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp @@ -2029,7 +2029,7 @@ SDOperand SelectionDAG::getNode(unsigned Opcode, MVT::ValueType VT, APInt Val = N1C->getAPIntValue(); unsigned FromBits = MVT::getSizeInBits(cast(N2)->getVT()); Val <<= Val.getBitWidth()-FromBits; - Val = Val.lshr(Val.getBitWidth()-FromBits); + Val = Val.ashr(Val.getBitWidth()-FromBits); return getConstant(Val, VT); } break; -- cgit v1.2.3-18-g5258