[PATCH] D140160: [LLVM][SelectionDAGBuilder] codegen callbr.landingpad intrinsic

Nick Desaulniers via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 15 13:01:18 PST 2022


nickdesaulniers created this revision.
Herald added subscribers: pengfei, hiraditya.
Herald added a project: All.
nickdesaulniers requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Given a CallBrInst, retain its first virtual register in SelectionDagBuilder's
FunctionLoweringInfo if there's corresponding landingpad. Walk the list
of COPY MachineInstr to find the original virtual and physical registers
defined by the INLINEASM_BR MachineInst.

Test cases from https://reviews.llvm.org/D139565.
Link: https://github.com/llvm/llvm-project/issues/59538

Part 3 from
https://discourse.llvm.org/t/rfc-syncing-asm-goto-with-outputs-with-gcc/65453/8

Follow up patches still need to wire up CallBrPrepare into the pass
pipelines.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D140160

Files:
  llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
  llvm/test/CodeGen/AArch64/callbr-asm-outputs-indirect-isel.ll
  llvm/test/CodeGen/X86/callbr-asm-outputs-indirect-isel.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D140160.483308.patch
Type: text/x-patch
Size: 41714 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221215/128719a1/attachment.bin>


More information about the llvm-commits mailing list