LLVM 20.0.0git
Macros | Typedefs | Functions | Variables
SILowerSGPRSpills.cpp File Reference
#include "AMDGPU.h"
#include "GCNSubtarget.h"
#include "MCTargetDesc/AMDGPUMCTargetDesc.h"
#include "SIMachineFunctionInfo.h"
#include "llvm/CodeGen/LiveIntervals.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/RegisterScavenging.h"
#include "llvm/InitializePasses.h"

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "si-lower-sgpr-spills"
 

Typedefs

using MBBVector = SmallVector< MachineBasicBlock *, 4 >
 

Functions

 INITIALIZE_PASS_BEGIN (SILowerSGPRSpills, DEBUG_TYPE, "SI lower SGPR spill instructions", false, false) INITIALIZE_PASS_END(SILowerSGPRSpills
 
static void insertCSRSaves (MachineBasicBlock &SaveBlock, ArrayRef< CalleeSavedInfo > CSI, SlotIndexes *Indexes, LiveIntervals *LIS)
 Insert spill code for the callee-saved registers used in the function.
 
static void insertCSRRestores (MachineBasicBlock &RestoreBlock, MutableArrayRef< CalleeSavedInfo > CSI, SlotIndexes *Indexes, LiveIntervals *LIS)
 Insert restore code for the callee-saved registers used in the function.
 
static void updateLiveness (MachineFunction &MF, ArrayRef< CalleeSavedInfo > CSI)
 

Variables

 DEBUG_TYPE
 
SI lower SGPR spill instructions
 
SI lower SGPR spill false
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "si-lower-sgpr-spills"

Definition at line 29 of file SILowerSGPRSpills.cpp.

Typedef Documentation

◆ MBBVector

Definition at line 31 of file SILowerSGPRSpills.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( SILowerSGPRSpills  ,
DEBUG_TYPE  ,
"SI lower SGPR spill instructions"  ,
false  ,
false   
)

◆ insertCSRRestores()

static void insertCSRRestores ( MachineBasicBlock RestoreBlock,
MutableArrayRef< CalleeSavedInfo CSI,
SlotIndexes Indexes,
LiveIntervals LIS 
)
static

◆ insertCSRSaves()

static void insertCSRSaves ( MachineBasicBlock SaveBlock,
ArrayRef< CalleeSavedInfo CSI,
SlotIndexes Indexes,
LiveIntervals LIS 
)
static

◆ updateLiveness()

static void updateLiveness ( MachineFunction MF,
ArrayRef< CalleeSavedInfo CSI 
)
static

Variable Documentation

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 80 of file SILowerSGPRSpills.cpp.

◆ false

SI lower SGPR spill false

Definition at line 81 of file SILowerSGPRSpills.cpp.

◆ instructions

SI lower SGPR spill instructions

Definition at line 81 of file SILowerSGPRSpills.cpp.