LLVM  12.0.0git
Classes | Namespaces | Macros | Functions | Variables
AMDGPUPostLegalizerCombiner.cpp File Reference
#include "AMDGPUTargetMachine.h"
#include "AMDGPULegalizerInfo.h"
#include "llvm/CodeGen/GlobalISel/Combiner.h"
#include "llvm/CodeGen/GlobalISel/CombinerHelper.h"
#include "llvm/CodeGen/GlobalISel/CombinerInfo.h"
#include "llvm/CodeGen/GlobalISel/GISelKnownBits.h"
#include "llvm/CodeGen/GlobalISel/MIPatternMatch.h"
#include "llvm/CodeGen/MachineDominators.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/TargetPassConfig.h"
#include "llvm/Support/Debug.h"
#include "MCTargetDesc/AMDGPUMCTargetDesc.h"
#include "AMDGPUGenPostLegalizeGICombiner.inc"
Include dependency graph for AMDGPUPostLegalizerCombiner.cpp:

Go to the source code of this file.

Classes

struct  FMinFMaxLegacyInfo
 
struct  CvtF32UByteMatchInfo
 

Namespaces

 llvm
 This class represents lattice values for constants.
 

Macros

#define DEBUG_TYPE   "amdgpu-postlegalizer-combiner"
 
#define AMDGPUPOSTLEGALIZERCOMBINERHELPER_GENCOMBINERHELPER_DEPS
 
#define AMDGPUPOSTLEGALIZERCOMBINERHELPER_GENCOMBINERHELPER_H
 
#define AMDGPUPOSTLEGALIZERCOMBINERHELPER_GENCOMBINERHELPER_CPP
 

Functions

static bool matchFMinFMaxLegacy (MachineInstr &MI, MachineRegisterInfo &MRI, MachineFunction &MF, FMinFMaxLegacyInfo &Info)
 
static void applySelectFCmpToFMinToFMaxLegacy (MachineInstr &MI, const FMinFMaxLegacyInfo &Info)
 
static bool matchUCharToFloat (MachineInstr &MI, MachineRegisterInfo &MRI, MachineFunction &MF, CombinerHelper &Helper)
 
static void applyUCharToFloat (MachineInstr &MI)
 
static bool matchCvtF32UByteN (MachineInstr &MI, MachineRegisterInfo &MRI, MachineFunction &MF, CvtF32UByteMatchInfo &MatchInfo)
 
static void applyCvtF32UByteN (MachineInstr &MI, const CvtF32UByteMatchInfo &MatchInfo)
 
 INITIALIZE_PASS_BEGIN (AMDGPUPostLegalizerCombiner, DEBUG_TYPE, "Combine AMDGPU machine instrs after legalization", false, false) INITIALIZE_PASS_END(AMDGPUPostLegalizerCombiner
 
FunctionPassllvm::createAMDGPUPostLegalizeCombiner (bool IsOptNone)
 

Variables

 DEBUG_TYPE
 
Combine AMDGPU machine instrs after legalization
 
Combine AMDGPU machine instrs after false
 

Macro Definition Documentation

◆ AMDGPUPOSTLEGALIZERCOMBINERHELPER_GENCOMBINERHELPER_CPP

#define AMDGPUPOSTLEGALIZERCOMBINERHELPER_GENCOMBINERHELPER_CPP

Definition at line 280 of file AMDGPUPostLegalizerCombiner.cpp.

◆ AMDGPUPOSTLEGALIZERCOMBINERHELPER_GENCOMBINERHELPER_DEPS

#define AMDGPUPOSTLEGALIZERCOMBINERHELPER_GENCOMBINERHELPER_DEPS

Definition at line 228 of file AMDGPUPostLegalizerCombiner.cpp.

◆ AMDGPUPOSTLEGALIZERCOMBINERHELPER_GENCOMBINERHELPER_H

#define AMDGPUPOSTLEGALIZERCOMBINERHELPER_GENCOMBINERHELPER_H

Definition at line 233 of file AMDGPUPostLegalizerCombiner.cpp.

◆ DEBUG_TYPE

#define DEBUG_TYPE   "amdgpu-postlegalizer-combiner"

Definition at line 27 of file AMDGPUPostLegalizerCombiner.cpp.

Function Documentation

◆ applyCvtF32UByteN()

static void applyCvtF32UByteN ( MachineInstr MI,
const CvtF32UByteMatchInfo MatchInfo 
)
static

◆ applySelectFCmpToFMinToFMaxLegacy()

static void applySelectFCmpToFMinToFMaxLegacy ( MachineInstr MI,
const FMinFMaxLegacyInfo Info 
)
static

◆ applyUCharToFloat()

static void applyUCharToFloat ( MachineInstr MI)
static

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( AMDGPUPostLegalizerCombiner  ,
DEBUG_TYPE  ,
"Combine AMDGPU machine instrs after legalization ,
false  ,
false   
)

◆ matchCvtF32UByteN()

static bool matchCvtF32UByteN ( MachineInstr MI,
MachineRegisterInfo MRI,
MachineFunction MF,
CvtF32UByteMatchInfo MatchInfo 
)
static

◆ matchFMinFMaxLegacy()

static bool matchFMinFMaxLegacy ( MachineInstr MI,
MachineRegisterInfo MRI,
MachineFunction MF,
FMinFMaxLegacyInfo Info 
)
static

◆ matchUCharToFloat()

static bool matchUCharToFloat ( MachineInstr MI,
MachineRegisterInfo MRI,
MachineFunction MF,
CombinerHelper Helper 
)
static

Variable Documentation

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 351 of file AMDGPUPostLegalizerCombiner.cpp.

◆ false

Combine AMDGPU machine instrs after false

Definition at line 351 of file AMDGPUPostLegalizerCombiner.cpp.

◆ legalization

Combine AMDGPU machine instrs after legalization

Definition at line 351 of file AMDGPUPostLegalizerCombiner.cpp.