[PATCH] D75098: Add TCOPY, a terminator form of the COPY instr

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu May 21 13:32:50 PDT 2020


arsenm added a comment.

In D75098#2049787 <https://reviews.llvm.org/D75098#2049787>, @qcolombet wrote:

> > Regardless of what happens to INLINEASM_BR, I think we still need a terminator copy
>
> What for?
>  The whole concept is bogus to me because if the previous instructions are really terminators (as in they branch to somewhere else), then this copy would never be executed.


Terminator does not imply a branch, it only means glued to the end of the block. It's the only way to get correct spill code placement around exec mask writes. We need a copy to the exec mask, but spill code needs to be inserted before that point. Currently we get unnecessary copies since we use a raw move instructions for this purpose, when we could have coalesced a copy


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D75098





More information about the llvm-commits mailing list