LLVM  14.0.0git
Macros | Functions | Variables
SIOptimizeExecMaskingPreRA.cpp File Reference
#include "AMDGPU.h"
#include "GCNSubtarget.h"
#include "MCTargetDesc/AMDGPUMCTargetDesc.h"
#include "llvm/CodeGen/LiveIntervals.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/InitializePasses.h"
Include dependency graph for SIOptimizeExecMaskingPreRA.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "si-optimize-exec-masking-pre-ra"
 

Functions

 INITIALIZE_PASS_BEGIN (SIOptimizeExecMaskingPreRA, DEBUG_TYPE, "SI optimize exec mask operations pre-RA", false, false) INITIALIZE_PASS_END(SIOptimizeExecMaskingPreRA
 
static bool isDefBetween (const LiveRange &LR, SlotIndex AndIdx, SlotIndex SelIdx)
 
static bool isDefBetween (const SIRegisterInfo &TRI, LiveIntervals *LIS, Register Reg, const MachineInstr &Sel, const MachineInstr &And)
 

Variables

 DEBUG_TYPE
 
SI optimize exec mask operations pre RA
 
SI optimize exec mask operations pre false
 

Detailed Description

This pass performs exec mask handling peephole optimizations which needs to be done before register allocation to reduce register pressure.

Definition in file SIOptimizeExecMaskingPreRA.cpp.

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "si-optimize-exec-masking-pre-ra"

Definition at line 24 of file SIOptimizeExecMaskingPreRA.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( SIOptimizeExecMaskingPreRA  ,
DEBUG_TYPE  ,
"SI optimize exec mask operations pre-RA ,
false  ,
false   
)

◆ isDefBetween() [1/2]

static bool isDefBetween ( const LiveRange LR,
SlotIndex  AndIdx,
SlotIndex  SelIdx 
)
static

◆ isDefBetween() [2/2]

static bool isDefBetween ( const SIRegisterInfo TRI,
LiveIntervals LIS,
Register  Reg,
const MachineInstr Sel,
const MachineInstr And 
)
static

Variable Documentation

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 70 of file SIOptimizeExecMaskingPreRA.cpp.

◆ false

SI optimize exec mask operations pre false

Definition at line 71 of file SIOptimizeExecMaskingPreRA.cpp.

◆ RA

SI optimize exec mask operations pre RA