[PATCH] D115230: [X86] Use bundle for CALL_RVMARKER expansion.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 7 02:55:23 PST 2021


fhahn created this revision.
fhahn added reviewers: ahatanak, ab, craig.topper.
Herald added subscribers: pengfei, hiraditya, kristof.beyls.
fhahn requested review of this revision.
Herald added a project: LLVM.

This patch updates expandCALL_RVMARKER to wrap the call, marker and
objc runtime call in an instruction bundle. This ensures later passes,
like machine block placement, cannot break them up.

On AArch64, the instruction sequence is already wrapped in a bundle.
Keeping the whole instruction sequence together is highly desirable for
performance and outweighs potential other benefits from breaking the
sequence up.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D115230

Files:
  llvm/lib/Target/X86/X86ExpandPseudo.cpp
  llvm/lib/Target/X86/X86TargetMachine.cpp
  llvm/test/CodeGen/X86/call-rv-marker.ll
  llvm/test/CodeGen/X86/expand-call-rvmarker.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D115230.392325.patch
Type: text/x-patch
Size: 7260 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211207/92b1b5fb/attachment.bin>


More information about the llvm-commits mailing list