From: Bill Wendling Date: Tue, 23 Oct 2007 23:36:57 +0000 (+0000) Subject: Fix comment and use the "Size" variable that's already provided. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=30eeb3c6c00088ecdcaae8850fbaaa933a316c32;p=oota-llvm.git Fix comment and use the "Size" variable that's already provided. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43271 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp index 71999b44c1e..39aa07618d1 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp @@ -4329,18 +4329,13 @@ void SelectionDAGLowering::visitMemIntrinsic(CallInst &I, unsigned Op) { } } - // Check to see if there is an unaligned memcpy from/onto the stack. If - // so, then ignore it for the present. + // The lowered load/store instructions from/to the stack frame can be + // unaligned depending on whether it's accessed off sp or fp. If this is + // the case, then just use the memcpy library call. if (Op1.getOpcode() == ISD::FrameIndex || - Op2.getOpcode() == ISD::FrameIndex) { - unsigned TotalSize = 0; - - for (unsigned i = 0; i < NumMemOps; i++) - TotalSize += MVT::getSizeInBits(MemOps[i]) / 8; - - if (TotalSize % Align != 0) + Op2.getOpcode() == ISD::FrameIndex) + if (Size->getValue() % Align != 0) break; - } for (unsigned i = 0; i < NumMemOps; i++) { MVT::ValueType VT = MemOps[i];