LLVM 20.0.0git
|
#include "MCTargetDesc/X86BaseInfo.h"
#include "X86.h"
#include "X86InstrInfo.h"
#include "X86Subtarget.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/MC/MCInstrDesc.h"
#include "llvm/Pass.h"
#include <atomic>
#include <cassert>
#include <cstdint>
#include "X86GenInstrMapping.inc"
Go to the source code of this file.
Macros | |
#define | COMP_EVEX_DESC "Compressing EVEX instrs when possible" |
#define | COMP_EVEX_NAME "x86-compress-evex" |
#define | DEBUG_TYPE COMP_EVEX_NAME |
#define | GET_X86_COMPRESS_EVEX_TABLE |
Functions | |
static bool | usesExtendedRegister (const MachineInstr &MI) |
static bool | performCustomAdjustments (MachineInstr &MI, unsigned NewOpc) |
static bool | CompressEVEXImpl (MachineInstr &MI, const X86Subtarget &ST) |
#define COMP_EVEX_DESC "Compressing EVEX instrs when possible" |
Definition at line 56 of file X86CompressEVEX.cpp.
#define COMP_EVEX_NAME "x86-compress-evex" |
Definition at line 57 of file X86CompressEVEX.cpp.
#define DEBUG_TYPE COMP_EVEX_NAME |
Definition at line 59 of file X86CompressEVEX.cpp.
#define GET_X86_COMPRESS_EVEX_TABLE |
Definition at line 63 of file X86CompressEVEX.cpp.
|
static |
Definition at line 176 of file X86CompressEVEX.cpp.
References llvm::X86::AC_EVEX_2_EVEX, llvm::X86::AC_EVEX_2_LEGACY, llvm::X86::AC_EVEX_2_VEX, assert(), llvm::X86II::EncodingMask, llvm::ArrayRef< T >::end(), llvm::X86II::EVEX, llvm::X86II::EVEX_B, llvm::X86II::EVEX_K, llvm::X86II::EVEX_L2, llvm::X86II::EVEX_NF, llvm::X86::getFirstAddrOperandIdx(), llvm::X86::getNFVariant(), llvm::X86::getNonNDVariant(), llvm::MachineOperand::getReg(), llvm::X86II::hasNewDataDest(), I, llvm::MachineOperand::isReg(), llvm::X86II::LEGACY, llvm_unreachable, llvm::lower_bound(), MI, performCustomAdjustments(), llvm::MCInstrDesc::TSFlags, usesExtendedRegister(), and llvm::X86II::VEX.
|
static |
Definition at line 116 of file X86CompressEVEX.cpp.
Referenced by CompressEVEXImpl().
|
static |
Definition at line 85 of file X86CompressEVEX.cpp.
References assert(), llvm::X86II::isApxExtendedReg(), llvm::X86II::isZMMReg(), and MI.
Referenced by CompressEVEXImpl().