Hi Zoltan, The part that determines whether SIB byte is needed caused a lot of regressions last night (see Geryon-X86-64 etc.). I've reverted it for now. Please take a look. Thanks, Evan On May 4, 2009, at 3:49 PM, Evan Cheng wrote:> Committed as revision 70929. Thanks. > > Evan > > On May 3, 2009, at 8:29 PM, vargaz wrote: > >> >> Hi, >> >> If this looks ok, could somebody check it in ? >> >> thanks >> >> Zoltan >> >> >> Evan Cheng-2 wrote: >>> >>> Looks good. Thanks. >>> >>> Evan >>> >>> On May 1, 2009, at 8:40 AM, Zoltan Varga wrote: >>> >>>> Hi, >>>> >>>> The attached patch contains the following changes: >>>> >>>> * X86InstrInfo.cpp: Synchronize a few places with the code in >>>> X86CodeEmitter.cpp >>>> * X86CodeEmitter.cpp: Avoid the longer SIB encoding on amd64 if it >>>> is not neeed. >>>> >>>> Zoltan >>>> <llvm.diff>_______________________________________________ >>>> LLVM Developers mailing list >>>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>> >>> >> >> -- >> View this message in context: http://www.nabble.com/-PATH--Fixes-for-the-amd64-JIT-code-tp23335910p23362528.html >> Sent from the LLVM - Dev mailing list archive at Nabble.com. >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Hi, I can't reproduce these failures on my linux machine. The test machine seems to be running darwin. I suspect that the problem might be with RIP relative addressing, or with the encoding of R12/R13, but the code seems to handle the latter, since it checks for ESP/EBP which is the same as R12/R13. Zoltan On Tue, May 5, 2009 at 8:18 PM, Evan Cheng <evan.cheng at apple.com> wrote:> Hi Zoltan, > > The part that determines whether SIB byte is needed caused a lot of > regressions last night (see Geryon-X86-64 etc.). I've reverted it for > now. Please take a look. > > Thanks, > > Evan > > On May 4, 2009, at 3:49 PM, Evan Cheng wrote: > > > Committed as revision 70929. Thanks. > > > > Evan > > > > On May 3, 2009, at 8:29 PM, vargaz wrote: > > > >> > >> Hi, > >> > >> If this looks ok, could somebody check it in ? > >> > >> thanks > >> > >> Zoltan > >> > >> > >> Evan Cheng-2 wrote: > >>> > >>> Looks good. Thanks. > >>> > >>> Evan > >>> > >>> On May 1, 2009, at 8:40 AM, Zoltan Varga wrote: > >>> > >>>> Hi, > >>>> > >>>> The attached patch contains the following changes: > >>>> > >>>> * X86InstrInfo.cpp: Synchronize a few places with the code in > >>>> X86CodeEmitter.cpp > >>>> * X86CodeEmitter.cpp: Avoid the longer SIB encoding on amd64 if it > >>>> is not neeed. > >>>> > >>>> Zoltan > >>>> <llvm.diff>_______________________________________________ > >>>> LLVM Developers mailing list > >>>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > >>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >>> > >>> _______________________________________________ > >>> LLVM Developers mailing list > >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >>> > >>> > >> > >> -- > >> View this message in context: > http://www.nabble.com/-PATH--Fixes-for-the-amd64-JIT-code-tp23335910p23362528.html > >> Sent from the LLVM - Dev mailing list archive at Nabble.com. > >> > >> _______________________________________________ > >> LLVM Developers mailing list > >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > > _______________________________________________ > > LLVM Developers mailing list > > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090505/0585c93e/attachment.html>
Hi, It looks like the problem was with the RIP relative addressing. The original patch mistakenly removed the || DispForReloc part because I tough that the RIP relative addressing was done by the SIB encodings, but it is actually done by the shorter ones. The attached patch seems to work for me on linux and when simulating darwin by forcing some variables in X86TargetMachine.cpp to their darwin values. Zoltan On Tue, May 5, 2009 at 11:17 PM, Zoltan Varga <vargaz at gmail.com> wrote:> Hi, > > I can't reproduce these failures on my linux machine. The test machine > seems to be > running darwin. I suspect that the problem might be with RIP relative > addressing, or with > the encoding of R12/R13, but the code seems to handle the latter, since it > checks for > ESP/EBP which is the same as R12/R13. > > Zoltan > > > On Tue, May 5, 2009 at 8:18 PM, Evan Cheng <evan.cheng at apple.com> wrote: > >> Hi Zoltan, >> >> The part that determines whether SIB byte is needed caused a lot of >> regressions last night (see Geryon-X86-64 etc.). I've reverted it for >> now. Please take a look. >> >> Thanks, >> >> Evan >> >> On May 4, 2009, at 3:49 PM, Evan Cheng wrote: >> >> > Committed as revision 70929. Thanks. >> > >> > Evan >> > >> > On May 3, 2009, at 8:29 PM, vargaz wrote: >> > >> >> >> >> Hi, >> >> >> >> If this looks ok, could somebody check it in ? >> >> >> >> thanks >> >> >> >> Zoltan >> >> >> >> >> >> Evan Cheng-2 wrote: >> >>> >> >>> Looks good. Thanks. >> >>> >> >>> Evan >> >>> >> >>> On May 1, 2009, at 8:40 AM, Zoltan Varga wrote: >> >>> >> >>>> Hi, >> >>>> >> >>>> The attached patch contains the following changes: >> >>>> >> >>>> * X86InstrInfo.cpp: Synchronize a few places with the code in >> >>>> X86CodeEmitter.cpp >> >>>> * X86CodeEmitter.cpp: Avoid the longer SIB encoding on amd64 if it >> >>>> is not neeed. >> >>>> >> >>>> Zoltan >> >>>> <llvm.diff>_______________________________________________ >> >>>> LLVM Developers mailing list >> >>>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> >>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> >>> >> >>> _______________________________________________ >> >>> LLVM Developers mailing list >> >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> >>> >> >>> >> >> >> >> -- >> >> View this message in context: >> http://www.nabble.com/-PATH--Fixes-for-the-amd64-JIT-code-tp23335910p23362528.html >> >> Sent from the LLVM - Dev mailing list archive at Nabble.com. >> >> >> >> _______________________________________________ >> >> LLVM Developers mailing list >> >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> > >> > _______________________________________________ >> > LLVM Developers mailing list >> > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090506/c4f8b6d1/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: sib.diff Type: text/x-diff Size: 612 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090506/c4f8b6d1/attachment.diff>