[ms-inline asm] Make the comment a bit more verbose.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175641 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chad Rosier 2013-02-20 18:03:44 +00:00
parent 2319a23979
commit 9b5b8b0b94

View File

@ -389,8 +389,12 @@ bool X86RegisterInfo::hasBasePointer(const MachineFunction &MF) const {
return false;
// When we need stack realignment and there are dynamic allocas, we can't
// reference off of the stack pointer, so we reserve a base pointer. This
// is also true if the function contain MS-style inline assembly.
// reference off of the stack pointer, so we reserve a base pointer.
//
// This is also true if the function contain MS-style inline assembly. We
// do this because if any stack changes occur in the inline assembly, e.g.,
// "pusha", then any C local variable or C argument references in the
// inline assembly will be wrong because the SP is not properly tracked.
if ((needsStackRealignment(MF) && MFI->hasVarSizedObjects()) ||
MF.hasMSInlineAsm())
return true;