[PATCH] D128934: [X86] Add RDPRU instruction

Paul Robinson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 30 11:59:51 PDT 2022


probinson created this revision.
probinson added reviewers: craig.topper, RKSimon.
Herald added subscribers: jsji, StephenFan, pengfei, hiraditya, mgorny.
Herald added a project: All.
probinson requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Add support for the RDPRU instruction on Zen2 processors.

User-facing features:

- Clang option -m[no-]rdpru to enable/disable the feature
- Support is implicit for znver2/znver3 processors
- Preprocessor symbol __RDPRU__ to indicate support
- Header rdpruintrin.h to define intrinsics
- "rdpru" mnemonic supported for assembler code

Internal features:

- Clang builtin __builtin_ia32_rdpru
- IR intrinsic @llvm.x86.rdpru


https://reviews.llvm.org/D128934

Files:
  clang/include/clang/Basic/BuiltinsX86.def
  clang/include/clang/Driver/Options.td
  clang/lib/Basic/Targets/X86.cpp
  clang/lib/Basic/Targets/X86.h
  clang/lib/Headers/CMakeLists.txt
  clang/lib/Headers/rdpruintrin.h
  clang/lib/Headers/x86intrin.h
  clang/test/CodeGen/rdpru-builtins.c
  clang/test/Driver/x86-target-features.c
  llvm/include/llvm/IR/IntrinsicsX86.td
  llvm/include/llvm/Support/X86TargetParser.def
  llvm/lib/Support/X86TargetParser.cpp
  llvm/lib/Target/X86/X86.td
  llvm/lib/Target/X86/X86ISelLowering.cpp
  llvm/lib/Target/X86/X86InstrInfo.td
  llvm/lib/Target/X86/X86InstrSystem.td
  llvm/lib/Target/X86/X86IntrinsicsInfo.h
  llvm/test/CodeGen/X86/rdpru.ll
  llvm/test/MC/X86/x86-64.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D128934.441474.patch
Type: text/x-patch
Size: 17077 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220630/ff0a6576/attachment.bin>


More information about the llvm-commits mailing list