]> granicus.if.org Git - llvm/commit
[X86][AVX512] Adding new LLVM TableGen backend which generates the EVEX2VEX compressi...
authorAyman Musa <ayman.musa@intel.com>
Tue, 7 Mar 2017 08:11:19 +0000 (08:11 +0000)
committerAyman Musa <ayman.musa@intel.com>
Tue, 7 Mar 2017 08:11:19 +0000 (08:11 +0000)
commitb59d8041db7c8e15a28d8b9393429b384499f603
tree0b58f66cb7849cb8242fd5d3d43f753d9238705d
parent82804ad01f4b662809eaa72601f874f0d063e22c
[X86][AVX512] Adding new LLVM TableGen backend which generates the EVEX2VEX compressing tables.

X86EvexToVex machine instruction pass compresses EVEX encoded instructions by replacing them with their identical VEX encoded instructions when possible.
It uses manually supported 2 large tables that map the EVEX instructions to their VEX ideticals.
This TableGen backend replaces the tables by automatically generating them.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@297127 91177308-0d34-0410-b5e6-96231b3b80d8
cmake/modules/AddLLVM.cmake
docs/TableGen/BackEnds.rst
lib/Target/X86/CMakeLists.txt
lib/Target/X86/X86EvexToVex.cpp
lib/Target/X86/X86InstrTablesInfo.h [deleted file]
utils/TableGen/CMakeLists.txt
utils/TableGen/TableGen.cpp
utils/TableGen/TableGenBackends.h
utils/TableGen/X86EVEX2VEXTablesEmitter.cpp [new file with mode: 0644]