[PATCH] D79794: Change the INLINEASM_BR MachineInstr to be a non-terminating instruction.

Bill Wendling via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 4 13:56:30 PDT 2021


void added a comment.

In D79794#3041059 <https://reviews.llvm.org/D79794#3041059>, @MatzeB wrote:

>> One method to perhaps address your concerns would be to create a "terminating" COPY instruction. This allows one to reload registers after the ASM block. There were some sticky issues with it. Going this method was much easier. (Yes, I know that's not the best reason to do something, but...) However, the only issue a hypothetical terminating COPY would solve is issues with instructions invalidly moving past the INLINEASM_BR.
>
> But that still would mean we end up with terminator instructions that assign registers, so we're still in this regalloc grey-area because that is technically not supported.

Yup! You identified the issue we faced. :-)


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D79794



More information about the llvm-commits mailing list