[PATCH] D51803: [X86] Modify the the rdtscp intrinsic to return values instead of taking a pointer argument

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 7 11:01:59 PDT 2018


craig.topper created this revision.
craig.topper added reviewers: RKSimon, spatel.

Similar to what was recently done for addcarry/subborrow and has been done for rdrand/rdseed for a while. It's better to use two results and an explicit store in IR when the store isn't part of the semantics of the instruction. This allows store->load forwarding to happen in the middle end. Or the store to be removed if its never loaded.


https://reviews.llvm.org/D51803

Files:
  include/llvm/IR/IntrinsicsX86.td
  lib/IR/AutoUpgrade.cpp
  lib/Target/X86/X86ISelLowering.cpp
  test/CodeGen/X86/rdtsc-upgrade.ll
  test/CodeGen/X86/rdtsc.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D51803.164466.patch
Type: text/x-patch
Size: 7059 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180907/b75b187c/attachment.bin>


More information about the llvm-commits mailing list