LLVM 22.0.0git
PPCInstrInfo.h File Reference
#include "MCTargetDesc/PPCMCTargetDesc.h"
#include "PPC.h"
#include "PPCRegisterInfo.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/CodeGen/LiveVariables.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "PPCGenInstrInfo.inc"

Go to the source code of this file.

Classes

struct  llvm::ImmInstrInfo
struct  llvm::LoadImmediateInfo
class  llvm::PPCInstrInfo

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.

Macros

#define GET_INSTRINFO_HEADER
#define NoInstr   PPC::INSTRUCTION_LIST_END
#define Pwr8LoadOpcodes
#define Pwr9LoadOpcodes
#define Pwr10LoadOpcodes
#define FutureLoadOpcodes
#define Pwr8StoreOpcodes
#define Pwr9StoreOpcodes
#define Pwr10StoreOpcodes
#define FutureStoreOpcodes
#define StoreOpcodesForSpill    { Pwr8StoreOpcodes, Pwr9StoreOpcodes, Pwr10StoreOpcodes, FutureStoreOpcodes }
#define LoadOpcodesForSpill    { Pwr8LoadOpcodes, Pwr9LoadOpcodes, Pwr10LoadOpcodes, FutureLoadOpcodes }

Enumerations

enum  llvm::SpillOpcodeKey {
  llvm::SOK_Int4Spill , llvm::SOK_Int8Spill , llvm::SOK_Float8Spill , llvm::SOK_Float4Spill ,
  llvm::SOK_CRSpill , llvm::SOK_CRBitSpill , llvm::SOK_VRVectorSpill , llvm::SOK_VSXVectorSpill ,
  llvm::SOK_VectorFloat8Spill , llvm::SOK_VectorFloat4Spill , llvm::SOK_SpillToVSR , llvm::SOK_PairedVecSpill ,
  llvm::SOK_AccumulatorSpill , llvm::SOK_UAccumulatorSpill , llvm::SOK_WAccumulatorSpill , llvm::SOK_DMRpSpill ,
  llvm::SOK_DMRSpill , llvm::SOK_SPESpill , llvm::SOK_PairedG8Spill , llvm::SOK_LastOpcodeSpill
}
enum  llvm::PPCMachineCombinerPattern : unsigned { llvm::REASSOC_XY_AMM_BMM = MachineCombinerPattern::TARGET_PATTERN_START , llvm::REASSOC_XMM_AMM_BMM , llvm::REASSOC_XY_BCA , llvm::REASSOC_XY_BAC }

Macro Definition Documentation

◆ FutureLoadOpcodes

#define FutureLoadOpcodes
Value:
{PPC::LWZ, \
PPC::LD, \
PPC::LFD, \
PPC::LFS, \
PPC::RESTORE_CR, \
PPC::RESTORE_CRBIT, \
PPC::LVX, \
PPC::LXV, \
PPC::DFLOADf64, \
PPC::DFLOADf32, \
PPC::SPILLTOVSR_LD, \
PPC::LXVP, \
PPC::RESTORE_ACC, \
PPC::RESTORE_UACC, \
PPC::RESTORE_WACC, \
PPC::RESTORE_DMRP, \
PPC::RESTORE_DMR, \
PPC::RESTORE_QUADWORD}
#define NoInstr

Definition at line 169 of file PPCInstrInfo.h.

◆ FutureStoreOpcodes

#define FutureStoreOpcodes
Value:
{PPC::STW, \
PPC::STD, \
PPC::STFD, \
PPC::STFS, \
PPC::SPILL_CR, \
PPC::SPILL_CRBIT, \
PPC::STVX, \
PPC::STXV, \
PPC::DFSTOREf64, \
PPC::DFSTOREf32, \
PPC::SPILLTOVSR_ST, \
PPC::STXVP, \
PPC::SPILL_ACC, \
PPC::SPILL_UACC, \
PPC::SPILL_WACC, \
PPC::SPILL_DMRP, \
PPC::SPILL_DMR, \
PPC::SPILL_QUADWORD}

Definition at line 253 of file PPCInstrInfo.h.

◆ GET_INSTRINFO_HEADER

#define GET_INSTRINFO_HEADER

Definition at line 23 of file PPCInstrInfo.h.

◆ LoadOpcodesForSpill

#define LoadOpcodesForSpill    { Pwr8LoadOpcodes, Pwr9LoadOpcodes, Pwr10LoadOpcodes, FutureLoadOpcodes }

Definition at line 277 of file PPCInstrInfo.h.

◆ NoInstr

#define NoInstr   PPC::INSTRUCTION_LIST_END

Definition at line 105 of file PPCInstrInfo.h.

◆ Pwr10LoadOpcodes

#define Pwr10LoadOpcodes
Value:
{PPC::LWZ, \
PPC::LD, \
PPC::LFD, \
PPC::LFS, \
PPC::RESTORE_CR, \
PPC::RESTORE_CRBIT, \
PPC::LVX, \
PPC::LXV, \
PPC::DFLOADf64, \
PPC::DFLOADf32, \
PPC::SPILLTOVSR_LD, \
PPC::LXVP, \
PPC::RESTORE_ACC, \
PPC::RESTORE_UACC, \
PPC::RESTORE_QUADWORD}

Definition at line 148 of file PPCInstrInfo.h.

◆ Pwr10StoreOpcodes

#define Pwr10StoreOpcodes
Value:
{PPC::STW, \
PPC::STD, \
PPC::STFD, \
PPC::STFS, \
PPC::SPILL_CR, \
PPC::SPILL_CRBIT, \
PPC::STVX, \
PPC::STXV, \
PPC::DFSTOREf64, \
PPC::DFSTOREf32, \
PPC::SPILLTOVSR_ST, \
PPC::STXVP, \
PPC::SPILL_ACC, \
PPC::SPILL_UACC, \
PPC::SPILL_QUADWORD}

Definition at line 232 of file PPCInstrInfo.h.

◆ Pwr8LoadOpcodes

#define Pwr8LoadOpcodes
Value:
{PPC::LWZ, \
PPC::LD, \
PPC::LFD, \
PPC::LFS, \
PPC::RESTORE_CR, \
PPC::RESTORE_CRBIT, \
PPC::LVX, \
PPC::LXVD2X, \
PPC::LXSDX, \
PPC::LXSSPX, \
PPC::SPILLTOVSR_LD, \
PPC::EVLDD, \
PPC::RESTORE_QUADWORD}

Definition at line 106 of file PPCInstrInfo.h.

◆ Pwr8StoreOpcodes

#define Pwr8StoreOpcodes
Value:
{PPC::STW, \
PPC::STD, \
PPC::STFD, \
PPC::STFS, \
PPC::SPILL_CR, \
PPC::SPILL_CRBIT, \
PPC::STVX, \
PPC::STXVD2X, \
PPC::STXSDX, \
PPC::STXSSPX, \
PPC::SPILLTOVSR_ST, \
PPC::EVSTDD, \
PPC::SPILL_QUADWORD}

Definition at line 190 of file PPCInstrInfo.h.

◆ Pwr9LoadOpcodes

#define Pwr9LoadOpcodes
Value:
{PPC::LWZ, \
PPC::LD, \
PPC::LFD, \
PPC::LFS, \
PPC::RESTORE_CR, \
PPC::RESTORE_CRBIT, \
PPC::LVX, \
PPC::LXV, \
PPC::DFLOADf64, \
PPC::DFLOADf32, \
PPC::SPILLTOVSR_LD, \
PPC::RESTORE_QUADWORD}

Definition at line 127 of file PPCInstrInfo.h.

◆ Pwr9StoreOpcodes

#define Pwr9StoreOpcodes
Value:
{PPC::STW, \
PPC::STD, \
PPC::STFD, \
PPC::STFS, \
PPC::SPILL_CR, \
PPC::SPILL_CRBIT, \
PPC::STVX, \
PPC::STXV, \
PPC::DFSTOREf64, \
PPC::DFSTOREf32, \
PPC::SPILLTOVSR_ST, \
PPC::SPILL_QUADWORD}

Definition at line 211 of file PPCInstrInfo.h.

◆ StoreOpcodesForSpill

#define StoreOpcodesForSpill    { Pwr8StoreOpcodes, Pwr9StoreOpcodes, Pwr10StoreOpcodes, FutureStoreOpcodes }

Definition at line 275 of file PPCInstrInfo.h.