[all-commits] [llvm/llvm-project] adccc0: [X86] Add X86ISD opcodes for the Key Locker AESENC...
topperc via All-commits
all-commits at lists.llvm.org
Sat Oct 3 16:56:10 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: adccc0bfa301005367d6b89a3aacc07ef0166e64
https://github.com/llvm/llvm-project/commit/adccc0bfa301005367d6b89a3aacc07ef0166e64
Author: Craig Topper <craig.topper at intel.com>
Date: 2020-10-03 (Sat, 03 Oct 2020)
Changed paths:
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86InstrInfo.td
M llvm/lib/Target/X86/X86InstrKL.td
M llvm/test/CodeGen/X86/keylocker-intrinsics.ll
Log Message:
-----------
[X86] Add X86ISD opcodes for the Key Locker AESENC*KL and AESDEC*KL instructions
Instead of emitting MachineSDNodes during lowering, emit X86ISD
opcodes. These opcodes will either be selected by tablegen
patterns or custom selection code.
Emitting MachineSDNodes during lowering is uncommon so this makes
things more consistent. It also allows selectAddr to be called to
perform address matching during instruction selection.
I had trouble getting tablegen to accept XMM0-XMM7 as results in
an isel pattern for the WIDE instructions so I had to use custom
instruction selection.
More information about the All-commits
mailing list