[PATCH] D88853: [X86] Remove X86ISD::LCMPXCHG8_SAVE_EBX_DAG and LCMPXCHG8B_SAVE_EBX pseudo instruction

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 5 14:16:41 PDT 2020


craig.topper created this revision.
craig.topper added reviewers: rnk, RKSimon, efriedma, spatel.
Herald added subscribers: pengfei, jfb, hiraditya.
Herald added a project: LLVM.
craig.topper requested review of this revision.

This and its friend X86ISD::LCMPXCHG8_SAVE_RBX_DAG are used if we need to avoid clobbering the frame pointer in EBX/RBX. EBX/RBX are only used a frame pointer in 64-bit mode. In 64-bit mode we don't use CMPXCHG8B since we have a GR64 cmpxchg available. So we don't need special handling for LCMPXCHG8B.

Split from D88808 <https://reviews.llvm.org/D88808>


https://reviews.llvm.org/D88853

Files:
  llvm/lib/Target/X86/X86ExpandPseudo.cpp
  llvm/lib/Target/X86/X86ISelLowering.cpp
  llvm/lib/Target/X86/X86InstrCompiler.td
  llvm/lib/Target/X86/X86InstrInfo.td

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D88853.296298.patch
Type: text/x-patch
Size: 8351 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201005/70cfeef8/attachment.bin>


More information about the llvm-commits mailing list