[PATCH] D20456: [CodeGen] Fix problem with X86 byte registers in CriticalAntiDepBreaker

Sanjay Patel via llvm-commits llvm-commits at lists.llvm.org
Tue May 24 16:51:29 PDT 2016


spatel added a comment.

In http://reviews.llvm.org/D20456#438492, @mbodart wrote:

> I'm not familiar with LivePhysReg, so I don't know how difficult it would
>  be to apply here (well, both because of that unfamiliarity, and because I've
>  found it very difficult to associate a definitive meaning to the liveness
>  data structures maintained here).  Fundamentally I think the shortcuts being
>  taken for tied operands, and registers already present in the KeepRegs set,
>  are a key piece of the problem.  So even if LivePhysReg were employed,
>  those shortcuts could still lead to issues.


I have to chime in here that I added the tied operand checks to fix PR20020 ( http://reviews.llvm.org/D4351 ):
http://llvm.org/bugs/show_bug.cgi?id=20020

This was one of my earliest commits. From the comments, you can see that I didn't understand how this pass works, but somehow everyone else also was and still is unsure of how this pass works!

So if nuking that part of the code (without reintroducing the bug it tried to fix of course) would help solve this bug, I'd fully support that.


http://reviews.llvm.org/D20456





More information about the llvm-commits mailing list