[llvm] r211543 - [FastISel][X86] Optimize selects when the condition comes from a compare.

Juergen Ributzka juergen at apple.com
Wed Jun 25 13:14:58 PDT 2014


Should be fixed in r211730.
-Juergen

On Jun 25, 2014, at 11:51 AM, Juergen Ributzka <juergen at apple.com> wrote:

> Hi Stephan,
> 
> I found the issue. The problem was that I was requesting the register for an instruction in a different basic block. The register might not be defined, even though the instruction has been emitted. In this particular case the instruction - a load - was folded into the compare and therefore no register was defined.
> 
> I have a fix and I am creating a reduced test case.
> 
> Cheers,
> Juergen
> 
> 
> On Jun 25, 2014, at 9:52 AM, Juergen Ributzka <juergen at apple.com> wrote:
> 
>> Hi Stephane,
>> 
>> I will take a look and see if I can find a quick fix. If not, I will revert the change.
>> 
>> Thanks for tracking this down for me again. Are you running an -O0 buildbot?
>> 
>> Cheers,
>> Juergen
>> 
>> 
>> On Jun 25, 2014, at 8:08 AM, Stephan Bergmann <sbergman at redhat.com> wrote:
>> 
>>> ...looks like X86FastISel::X86FastEmitCMoveSelect -> X86FastEmitCompare(CmpLHS, CmpRHS, CmpVT) -> getRegForValue(Op0) comes up with a different virtual register than the one that got spilled out, for whatever reason (way beyond my humble debugging attempts).
>>> 
>>> Stephan
>> 
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140625/e022aecb/attachment.html>


More information about the llvm-commits mailing list