[PATCH] D59547: [X86] Remove X86 specific dag nodes for RDTSC/RDTSCP/RDPMC. NFCI

Andrea Di Biagio via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 19 08:30:46 PDT 2019


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

This patch removes the following dag node opcodes from namespace X86ISD:

  RDTSC_DAG,
  RDTSCP_DAG,
  RDPMC_DAG

The logic that expands RDTSC/RDPMC/XGETBV intrinsics is basically the same. The only differences are:

- RDTSC/RDTSCP don't implicitly read ECX.
- RDTSCP also implicitly writes ECX.

I moved the common expansion logic into a helper function with the goal to get rid of code repetition.
That helper is now used for the expansion of RDTSC/RDTSCP/RDPMC/XGETBV intrinsics.

No functional change intended.


https://reviews.llvm.org/D59547

Files:
  lib/Target/X86/X86ISelLowering.cpp
  lib/Target/X86/X86ISelLowering.h
  lib/Target/X86/X86InstrInfo.td
  lib/Target/X86/X86InstrSystem.td
  lib/Target/X86/X86IntrinsicsInfo.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D59547.191308.patch
Type: text/x-patch
Size: 14766 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190319/86893d39/attachment-0001.bin>


More information about the llvm-commits mailing list