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

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 24 12:44:37 PDT 2022


efriedma updated this revision to Diff 439861.
efriedma added a comment.

For ir-block-address-taken basic blocks, don't depend on MachineBasicBlock::getBasicBlock(); store the corresponding BasicBlock separately.  This ensures it stays isolated from any future cleanups related to getBasicBlock().  (The MIR ir-block-address-taken now takes a basic block argument.)


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D124697

Files:
  llvm/include/llvm/CodeGen/MachineBasicBlock.h
  llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
  llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
  llvm/lib/CodeGen/MIRParser/MILexer.cpp
  llvm/lib/CodeGen/MIRParser/MILexer.h
  llvm/lib/CodeGen/MIRParser/MIParser.cpp
  llvm/lib/CodeGen/MachineBasicBlock.cpp
  llvm/lib/CodeGen/MachineVerifier.cpp
  llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
  llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
  llvm/lib/Target/VE/VEISelLowering.cpp
  llvm/lib/Target/X86/X86FrameLowering.cpp
  llvm/lib/Target/X86/X86ISelLowering.cpp
  llvm/lib/Target/X86/X86IndirectThunks.cpp
  llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
  llvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-blockaddress.mir
  llvm/test/CodeGen/AArch64/GlobalISel/select-blockaddress.mir
  llvm/test/CodeGen/AArch64/branch-target-enforcement.mir
  llvm/test/CodeGen/AArch64/speculation-hardening-sls.mir
  llvm/test/CodeGen/ARM/ifcvt-diamond-unanalyzable-common.mir
  llvm/test/CodeGen/ARM/ifcvt-size.mir
  llvm/test/CodeGen/Hexagon/bank-conflict.mir
  llvm/test/CodeGen/Hexagon/hwloop-redef-imm.mir
  llvm/test/CodeGen/Hexagon/loop_correctness.ll
  llvm/test/CodeGen/Hexagon/pipeliner/swp-phi-start.mir
  llvm/test/CodeGen/Hexagon/swp-carried-dep1.mir
  llvm/test/CodeGen/Hexagon/swp-carried-dep2.mir
  llvm/test/CodeGen/MIR/Generic/basic-blocks.mir
  llvm/test/CodeGen/MIR/X86/block-address-operands.mir
  llvm/test/CodeGen/MIR/X86/expected-block-reference-in-blockaddress.mir
  llvm/test/CodeGen/MIR/X86/expected-function-reference-after-blockaddress.mir
  llvm/test/CodeGen/MIR/X86/expected-global-value-after-blockaddress.mir
  llvm/test/CodeGen/MIR/X86/undefined-ir-block-in-blockaddress.mir
  llvm/test/CodeGen/MIR/X86/undefined-ir-block-slot-in-blockaddress.mir
  llvm/test/CodeGen/X86/callbr-asm-kill.mir
  llvm/test/CodeGen/X86/callbr-asm-outputs-pred-succ.ll
  llvm/test/CodeGen/X86/tail-dup-asm-goto.ll
  llvm/test/CodeGen/X86/win64-eh-empty-block-2.mir
  llvm/test/tools/llvm-reduce/mir/preserve-block-info.mir
  llvm/tools/llvm-reduce/ReducerWorkItem.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D124697.439861.patch
Type: text/x-patch
Size: 62403 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220624/7d1a1f88/attachment.bin>


More information about the llvm-commits mailing list