[PATCH] D17257: New utility class ReachingPhysDefs for post-ra analysis.

Jonas Paulsson via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 22 05:08:39 PDT 2016


jonpa added a comment.

Quentin,

I tried enabling the aggressive antidep breaker with SystemZ z13, and found that it fails the test-suite heavily. I suspected that live-in lists might be the cause for this, and tried this ReachingPhysRegs class. Most of the fails then disappeared, but not all.

Having discussed a bit with Matthias Braun, we thought perhaps adding a check of live-in lists in the MachineVerifier might be a good thing. I thought ReachingPhysRegs could be good to use there.

It seems however, that it is adding all aliases of all defined registers per instruction. Considering Live-in lists however, it seems that only Reg is part of it (not all the aliases).

How could one check for liveness of a specific reg disregarding its aliases?

Must the class add all aliases? An alternative might be to only add the specific Reg, and then in the context of the query address aliases as well. If this is slow, perhaps first calculating the live Regs, and then build a second set of maps that propagates everything into aliases.

What is your opinion?


https://reviews.llvm.org/D17257





More information about the llvm-commits mailing list