[PATCH] D74943: [GISel][KnownBits]{NFC} Add a cache mechanism to speed compile time

Quentin Colombet via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 21 13:25:41 PST 2020


qcolombet added a comment.

> I think the argument that because it's possible to do the wrong thing if you try hard enough that you have to protect against that is rather flawed and inconsistent with the existing code in LLVM.

I disagree. We never said or enforced that virtual registers are not reused (BTW we do that all the time after SSA, for instance in the register coalescer, but let us stick to SSA passes.)
Your example with SSA is different: this is a well defined, checked and enforced property, unlike the virtual register property you want.

Even if we were to decide that yes, virtual registers must not change values overtime (while in SSA form), this is not something we could check or enforce, therefore we open ourselves to hard to track bugs. To me that is a design flaw.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D74943/new/

https://reviews.llvm.org/D74943





More information about the llvm-commits mailing list