<html><head><base href="x-msg://2666/"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Jan 18, 2012, at 9:55 AM, Gurd, Preston wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Menlo; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div lang="EN-US" link="blue" vlink="purple"><div class="WordSection1" style="page: WordSection1; "><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; ">The attached one line patch corrects a problem whereby llvm was failing to generate an ANDL instruction to align the stack pointer on function entry when the required alignment was mod 16 and when stack realignment was requested.</div></div></div></span></blockquote><div><br></div><div><blockquote type="cite"><div><font class="Apple-style-span" color="#000000">--- lib/Target/X86/X86RegisterInfo.cpp<span class="Apple-tab-span" style="white-space:pre"> </span>(revision 148345)</font></div><div><font class="Apple-style-span" color="#000000">+++ lib/Target/X86/X86RegisterInfo.cpp<span class="Apple-tab-span" style="white-space:pre"> </span>(working copy)</font></div><div><font class="Apple-style-span" color="#000000">@@ -352,7 +352,7 @@</font></div><div><font class="Apple-style-span" color="#000000"> const MachineFrameInfo *MFI = MF.getFrameInfo();</font></div><div><font class="Apple-style-span" color="#000000"> const Function *F = MF.getFunction();</font></div><div><font class="Apple-style-span" color="#000000"> unsigned StackAlign = TM.getFrameLowering()->getStackAlignment();</font></div><div><font class="Apple-style-span" color="#000000">- bool requiresRealignment = ((MFI->getMaxAlignment() > StackAlign) ||</font></div><div><font class="Apple-style-span" color="#000000">+ bool requiresRealignment = ((MFI->getMaxAlignment() >= StackAlign) ||</font></div><div><font class="Apple-style-span" color="#000000"> F->hasFnAttr(Attribute::StackAlignment));</font></div><div><font class="Apple-style-span" color="#000000"><br></font></div></blockquote><br></div><div>I don't understand this change. Why realign the stack when it is already sufficiently aligned?</div><div><br></div><div>/jakob</div><div><br></div></div></body></html>