LLVM 22.0.0git
AMDGPURegBankLegalize.cpp File Reference

Go to the source code of this file.

Classes

class  AMDGPURegBankLegalizeCombiner

Macros

#define DEBUG_TYPE   "amdgpu-regbanklegalize"
 Lower G_ instructions that can't be inst-selected with register bank assignment from AMDGPURegBankSelect based on machine uniformity info.

Functions

 INITIALIZE_PASS_BEGIN (AMDGPURegBankLegalize, DEBUG_TYPE, "AMDGPU Register Bank Legalize", false, false) INITIALIZE_PASS_END(AMDGPURegBankLegalize
const RegBankLegalizeRulesgetRules (const GCNSubtarget &ST, MachineRegisterInfo &MRI)
static Register getAnySgprS1 (const MachineRegisterInfo &MRI)

Variables

 DEBUG_TYPE
AMDGPU Register Bank Legalize
AMDGPU Register Bank false

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "amdgpu-regbanklegalize"

Lower G_ instructions that can't be inst-selected with register bank assignment from AMDGPURegBankSelect based on machine uniformity info.

Given types on all operands, some register bank assignments require lowering while others do not. Note: cases where all register bank assignments would require lowering are lowered in legalizer. For example vgpr S64 G_AND requires lowering to S32 while sgpr S64 does not. Eliminate sgpr S1 by lowering to sgpr S32.

Definition at line 33 of file AMDGPURegBankLegalize.cpp.

Function Documentation

◆ getAnySgprS1()

◆ getRules()

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( AMDGPURegBankLegalize ,
DEBUG_TYPE ,
"AMDGPU Register Bank Legalize" ,
false ,
false  )

Variable Documentation

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 74 of file AMDGPURegBankLegalize.cpp.

◆ false

AMDGPU Register Bank false

Definition at line 75 of file AMDGPURegBankLegalize.cpp.

◆ Legalize

AMDGPU Register Bank Legalize

Definition at line 75 of file AMDGPURegBankLegalize.cpp.