[PATCH] D69365: [X86] Use 64-bit version of source register in LowerPATCHABLE_EVENT_CALL and LowerPATCHABLE_TYPED_EVENT_CALL

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 23 23:49:05 PDT 2019


craig.topper created this revision.
craig.topper added a reviewer: dberris.
Herald added a subscriber: hiraditya.
Herald added a project: LLVM.

The PATCHABLE_EVENT_CALL uses i32 in the intrinsic. This
results in the register allocator picking a 32-bit register. We
need to use the 64-bit register when forming the MOV64rr
instructions. Otherwise we print illegal assembly in the text
output.

I think prior to this it was impossible for SrcReg to be equal
to DstReg so the NOP code was not reachable.

While there use Register instead of unsigned.

Also add a FIXME for what looks like a bug.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D69365

Files:
  llvm/lib/Target/X86/X86MCInstLower.cpp
  llvm/test/CodeGen/X86/xray-custom-log.ll
  llvm/test/CodeGen/X86/xray-typed-event-log.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D69365.226202.patch
Type: text/x-patch
Size: 4891 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191024/36350b34/attachment.bin>


More information about the llvm-commits mailing list