[all-commits] [llvm/llvm-project] 413577: [X86] Support Intel Key Locker

xiangzh1 via All-commits all-commits at lists.llvm.org
Wed Sep 30 03:09:36 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 413577a8790407d75ba834fa5668c2632fe1851e
      https://github.com/llvm/llvm-project/commit/413577a8790407d75ba834fa5668c2632fe1851e
  Author: Xiang1 Zhang <xiang1.zhang at intel.com>
  Date:   2020-09-30 (Wed, 30 Sep 2020)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/immintrin.h
    A clang/lib/Headers/keylocker_wide_intrin.h
    A clang/lib/Headers/keylockerintrin.h
    A clang/test/CodeGen/X86/keylocker.c
    M clang/test/CodeGen/attr-target-x86.c
    M clang/test/Driver/x86-target-features.c
    M clang/test/Preprocessor/x86_target_features.c
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/include/llvm/Support/X86TargetParser.def
    M llvm/lib/IR/Function.cpp
    M llvm/lib/Support/Host.cpp
    M llvm/lib/Support/X86TargetParser.cpp
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrInfo.td
    A llvm/lib/Target/X86/X86InstrInfo.td.rej
    A llvm/lib/Target/X86/X86InstrKL.td
    M llvm/lib/Target/X86/X86Subtarget.h
    A llvm/test/CodeGen/X86/keylocker-intrinsics.ll
    A llvm/test/MC/Disassembler/X86/KEYLOCKER/Keylocker-x86-32-att.txt
    A llvm/test/MC/Disassembler/X86/KEYLOCKER/Keylocker-x86-32-intel.txt
    A llvm/test/MC/Disassembler/X86/KEYLOCKER/Keylocker-x86-64-att.txt
    A llvm/test/MC/Disassembler/X86/KEYLOCKER/Keylocker-x86-64-intel.txt
    A llvm/test/MC/X86/KEYLOCKER/keylocker-att.s
    A llvm/test/MC/X86/KEYLOCKER/keylocker-intel.s
    A llvm/test/MC/X86/KEYLOCKER/x86-64-keylocker-att.s
    A llvm/test/MC/X86/KEYLOCKER/x86-64-keylocker-intel.s
    M llvm/utils/TableGen/IntrinsicEmitter.cpp

  Log Message:
  -----------
  [X86] Support Intel Key Locker

Key Locker provides a mechanism to encrypt and decrypt data with an AES key without having access
to the raw key value by converting AES keys into “handles”. These handles can be used to perform the
same encryption and decryption operations as the original AES keys, but they only work on the current
system and only until they are revoked. If software revokes Key Locker handles (e.g., on a reboot),
then any previous handles can no longer be used.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D88398




More information about the All-commits mailing list