LLVM 20.0.0git
Macros | Functions
SIPeepholeSDWA.cpp File Reference
#include "SIPeepholeSDWA.h"
#include "AMDGPU.h"
#include "GCNSubtarget.h"
#include "MCTargetDesc/AMDGPUMCTargetDesc.h"
#include "llvm/ADT/MapVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include <optional>

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "si-peephole-sdwa"
 

Functions

 STATISTIC (NumSDWAPatternsFound, "Number of SDWA patterns found.")
 
 STATISTIC (NumSDWAInstructionsPeepholed, "Number of instruction converted to SDWA.")
 
static raw_ostreamoperator<< (raw_ostream &OS, SdwaSel Sel)
 
static raw_ostreamoperator<< (raw_ostream &OS, const DstUnused &Un)
 
static void copyRegOperand (MachineOperand &To, const MachineOperand &From)
 
static bool isSameReg (const MachineOperand &LHS, const MachineOperand &RHS)
 
static MachineOperandfindSingleRegUse (const MachineOperand *Reg, const MachineRegisterInfo *MRI)
 
static MachineOperandfindSingleRegDef (const MachineOperand *Reg, const MachineRegisterInfo *MRI)
 
static raw_ostreamoperator<< (raw_ostream &OS, const SDWAOperand &Operand)
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "si-peephole-sdwa"

Definition at line 33 of file SIPeepholeSDWA.cpp.

Function Documentation

◆ copyRegOperand()

static void copyRegOperand ( MachineOperand To,
const MachineOperand From 
)
static

◆ findSingleRegDef()

static MachineOperand * findSingleRegDef ( const MachineOperand Reg,
const MachineRegisterInfo MRI 
)
static

Definition at line 299 of file SIPeepholeSDWA.cpp.

References llvm::MachineInstr::defs(), and MRI.

◆ findSingleRegUse()

static MachineOperand * findSingleRegUse ( const MachineOperand Reg,
const MachineRegisterInfo MRI 
)
static

◆ isSameReg()

static bool isSameReg ( const MachineOperand LHS,
const MachineOperand RHS 
)
static

Definition at line 270 of file SIPeepholeSDWA.cpp.

References LHS, and RHS.

Referenced by findSingleRegUse().

◆ operator<<() [1/3]

static raw_ostream & operator<< ( raw_ostream OS,
const DstUnused Un 
)
static

◆ operator<<() [2/3]

static raw_ostream & operator<< ( raw_ostream OS,
const SDWAOperand &  Operand 
)
static

Definition at line 871 of file SIPeepholeSDWA.cpp.

References OS.

◆ operator<<() [3/3]

static raw_ostream & operator<< ( raw_ostream OS,
SdwaSel  Sel 
)
static

◆ STATISTIC() [1/2]

STATISTIC ( NumSDWAInstructionsPeepholed  ,
"Number of instruction converted to SDWA."   
)

References MRI, TII, and TRI.

◆ STATISTIC() [2/2]

STATISTIC ( NumSDWAPatternsFound  ,
"Number of SDWA patterns found."   
)