[PATCH] D124697: Distinguish between different forms of "address-taken" MachineBasicBlocks

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 17 14:08:56 PDT 2022


arsenm added inline comments.


================
Comment at: llvm/include/llvm/CodeGen/MachineBasicBlock.h:152
+  /// to an IR-level "blockaddress" constant.
+  bool IRBlockAddressTaken = false;
 
----------------
efriedma wrote:
> arsenm wrote:
> > If you're going to depend on the underlying IR block, you don't really need another field inside MachineBasicBlock. You can just query directly from the IR
> In general, there are multiple MachineBasicBlocks which correspond to a single IR BasicBlock; when we split a block for whatever reason, getBasicBlock() is the same for both halves.  We need to know which one is the jump destination.
Does it actually make sense to preserve the IR block if the block is split? Is the IR block used for anything else? Maybe for block splitting the second half of the block shouldn't have the IR link


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D124697



More information about the llvm-commits mailing list