<div dir="ltr">Hi Tom,<br><div class="gmail_extra"><br><br><div class="gmail_quote">2014-04-09 3:07 GMT+04:00 Tom Stellard <span dir="ltr"><<a>tom@stellard.net</a>></span>:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div>On Tue, Apr 08, 2014 at 04:08:13PM +0400, Robert Khasanov wrote:<br>

> Hi Reid,<br>
><br>
> Would you approve your patches r203146 and r202774 to be backported to<br>
> 3.4.1? They fix stability issues in x86 asm.<br>
><br>
<br>
</div>Hi Robert,<br>
<br>
I was able to merge r203146, but it used a c++11 feature:<br>
std::string::back() which I replaced with<br>
std::string::at(std::string::size() - 1).<br></blockquote><div><br></div><div>That is fine!</div><div>š</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<br>
r202774 was not merged, because it is dependent on r198584 which adds the<br>
X86AsmParser::is32BitMode() function. šI don't think we would need to<br>
backport all of r198584, maybe just the function and the Mode32Bit<br>
SubtargetFeature. šCould you take a look and let me know what you want<br>
to do?<br></blockquote><div><br></div><div>I looked into this. r198584 introduces 16-bit mode support. I think that just adding function and Mode32Bit SubtargetFeature is not good because it is not good isolated from another code in this patch.š</div>


<div>I suggest another solution for this.</div><div>Line that contains X86AsmParser::is32BitMode() isn't new, it is just replaced from codeš</div><div><div>- šif (isa<MCSymbolRefExpr>(Disp)) {</div><div>- š šif (!Info.IsVarDecl) {<br>
</div><div>- š š šunsigned RegNo =</div><div>- š š š š šis64BitMode() ? X86::RBX : (is32BitMode() ? X86::EBX : X86::BX);</div></div><div><br></div><div>toš</div><div><br></div><div><div>+ šif (isa<MCSymbolRefExpr>(Disp) && !Info.IsVarDecl) {</div>
<div>+ š šunsigned RegNo =</div><div>+ š š š šis64BitMode() ? X86::RBX : (is32BitMode() ? X86::EBX : X86::BX);</div></div><div><br></div><div>Before 16-bit mode introducing,š</div><div><div>š š unsigned RegNo =</div><div>
š š š š is64BitMode() ? X86::RBX : (is32BitMode() ? X86::EBX : X86::BX);</div></div><div>was</div><div>š š unsigned RegNo = is64BitMode() ? X86::RBX : X86::EBX;</div><div>š</div><div>I think it would be better to just change this expression to "old" one.</div>
<div><br></div><div>See attached modified r202774 patch for release_34 branch.</div><div>I checked, build and make check works with this patch.</div><div><br></div><div>Nadav, Reid,</div><div>is it good solution?</div><div>
<br></div><div>Thanks,š</div><div><br></div><div>Robert</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<br>
Thanks,<br>
Tom<br>
<div><br>
> Thanks,<br>
> Robert<br>
><br>
> ÐÏÎÅÄÅÌØÎÉË, 7 ÁÐÒÅÌÑ 2014 Ç. ÐÏÌØÚÏ×ÁÔÅÌØ Tom Stellard ÎÁÐÉÓÁÌ:<br>
><br>
> > Hi Robert,<br>
> ><br>
> > Can you ping the code owners about these patches. šIt might be good<br>
> > to write a separate email per code owner and cc the appropriate -commits<br>
> > list.<br>
> ><br>
> > Thanks,<br>
> > Tom<br>
> ><br>
> > On Wed, Apr 02, 2014 at 06:16:44PM +0400, Robert Khasanov wrote:<br>
> > > Hi Tom,<br>
> > ><br>
> > > I would like to nominate the following patches to be backported to 3.4.1<br>
> > ><br>
> > > Clang:<br>
</div>> > > 1. r204742 - Zinovy Nis <<a>zinovy.nis@gmail.com</a> <javascript:;>> - Fix an<br>
<div>> > logic error in the<br>
> > > clang driver preventing crtfastmath.o from linking when -Ofast is used<br>
> > > without -ffast-math<br>
> > ><br>
> > > LLVM:<br>
</div>> > > 1. r205067 - Akira Hatanaka <<a>ahatanaka@apple.com</a> <javascript:;>> -<br>
<div>> > [x86] Fix printing of<br>
> > > register operands with q modifier<br>
</div>> > > 2. r203581 - Hans Wennborg <<a>hans@hanshq.net</a> <javascript:;>> - X86:<br>
<div>> > Don't generate 64-bit<br>
> > > movd after cmpneqsd in 32-bit mode (PR19059)<br>
</div>> > > 3. r203146 - Reid Kleckner <<a>reid@kleckner.net</a> <javascript:;>> - MS asm:<br>
<div>> > The initial dot in<br>
> > > struct access is optional<br>
</div>> > > 4. r202774 - Reid Kleckner <<a>reid@kleckner.net</a> <javascript:;>> - MC: Fix<br>
<div>> > Intel assembly<br>
> > > parser for [global + offset]<br>
</div>> > > 5. r201507 - Craig Topper <<a>craig.topper@gmail.com</a> <javascript:;>> - Fix<br>
<div>> > diassembler<br>
> > > handling of rex.b when mod=00/01/10 and bbb=101. Mod=00 should ignore the<br>
> > > base register entirely. Mod=01/10 should treat this as R13 plus<br>
> > > displacment. Fixes PR18860<br>
> > > 6. r201126 - Robert Khasanov - Changed attributes of all gather<br>
> > intrinsics<br>
> > > from IntrReadMem to IntrReadArgMem as they access only memory based on<br>
> > > argument.<br>
> > ><br>
> > > Most patches fix different stable issues on X86 target.<br>
> > ><br>
> > > Thanks,<br>
> > > Robert<br>
> > ><br>
> > ><br>
> > ><br>
</div>> > > 2014-03-26 20:10 GMT+04:00 Tom Stellard <<a>tom@stellard.net</a> <javascript:;><br>
<div>> > >:<br>
> > ><br>
> > > > Hi,<br>
> > > ><br>
> > > > We are now about halfway between the 3.4 and 3.5 releases, and I would<br>
> > > > like to start preparing for a 3.4.1 release. šHere is my proposed<br>
> > release<br>
> > > > schedule:<br>
> > > ><br>
> > > > Mar 26 - April 9: Identify and backport additional bug fixes to the 3.4<br>
> > > > branch.<br>
> > > > April 9 - April 18: Testing Phase<br>
> > > > April 18: 3.4.1 Release<br>
> > > ><br>
> > > > How you can help:<br>
> > > ><br>
> > > > - If you have any bug fixes you think should be included to 3.4.1, send<br>
> > > > š me an email with the SVN revision in trunk and also cc the code owner<br>
> > > > š and llvm-commits (or cfe-commits if it is a clang patch).<br>
> > > ><br>
> > > > - Start integrating the 3.4 branch into your project or OS distribution<br>
> > > > š to and check for any issues.<br>
> > > ><br>
> > > > - Volunteer as a tester for the testing phase.<br>
> > > ><br>
> > > > Thank you,<br>
> > > ><br>
> > > > Tom<br>
> > > > _______________________________________________<br>
> > > > LLVM Developers mailing list<br>
</div>> > > > <a>LLVMdev@cs.uiuc.edu</a> <javascript:;> š š š š <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>

> > > > <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
> > > ><br>
> ><br>
</blockquote></div><br></div></div>