LLVM: lib/Target/SPIRV/SPIRVLegalizerInfo.cpp File Reference (original) (raw)

#include "[SPIRVLegalizerInfo.h](SPIRVLegalizerInfo%5F8h%5Fsource.html)"
#include "[SPIRV.h](SPIRV%5F8h%5Fsource.html)"
#include "[SPIRVGlobalRegistry.h](SPIRVGlobalRegistry%5F8h%5Fsource.html)"
#include "[SPIRVSubtarget.h](SPIRVSubtarget%5F8h%5Fsource.html)"
#include "[llvm/CodeGen/GlobalISel/GenericMachineInstrs.h](GenericMachineInstrs%5F8h%5Fsource.html)"
#include "[llvm/CodeGen/GlobalISel/LegalizerHelper.h](LegalizerHelper%5F8h%5Fsource.html)"
#include "[llvm/CodeGen/GlobalISel/MachineIRBuilder.h](MachineIRBuilder%5F8h%5Fsource.html)"
#include "[llvm/CodeGen/MachineInstr.h](MachineInstr%5F8h%5Fsource.html)"
#include "[llvm/CodeGen/MachineRegisterInfo.h](MachineRegisterInfo%5F8h%5Fsource.html)"
#include "[llvm/CodeGen/TargetOpcodes.h](TargetOpcodes%5F8h%5Fsource.html)"
#include "llvm/IR/IntrinsicsSPIRV.h"
#include "[llvm/Support/Debug.h](Support%5F2Debug%5F8h%5Fsource.html)"
#include "[llvm/Support/MathExtras.h](MathExtras%5F8h%5Fsource.html)"

Go to the source code of this file.

Macros
#define DEBUG_TYPE "spirv-legalizer"
Functions
LegalityPredicate typeOfExtendedScalars (unsigned TypeIdx, bool IsExtendedInts)
static bool legalizeExtractVectorElt (LegalizerHelper &Helper, MachineInstr &MI, SPIRVGlobalRegistry *GR)
static Register convertPtrToInt (Register Reg, LLT ConvTy, SPIRVType *SpvType, LegalizerHelper &Helper, MachineRegisterInfo &MRI, SPIRVGlobalRegistry *GR)

Macro Definition Documentation

DEBUG_TYPE

#define DEBUG_TYPE "spirv-legalizer"

Definition at line 31 of file SPIRVLegalizerInfo.cpp.

Function Documentation

convertPtrToInt()

Register convertPtrToInt ( Register Reg, LLT ConvTy, SPIRVType * SpvType, LegalizerHelper & Helper, MachineRegisterInfo & MRI, SPIRVGlobalRegistry * GR ) static

Definition at line 464 of file SPIRVLegalizerInfo.cpp.

References llvm::MachineInstrBuilder::addDef(), llvm::MachineInstrBuilder::addUse(), llvm::SPIRVGlobalRegistry::assignSPIRVTypeToVReg(), llvm::MachineIRBuilder::buildInstr(), llvm::MachineIRBuilder::getMF(), llvm::SPIRVGlobalRegistry::getRegClass(), llvm::LegalizerHelper::MIRBuilder, MRI, and Reg.

Referenced by llvm::SPIRVLegalizerInfo::legalizeCustom().

legalizeExtractVectorElt()

bool legalizeExtractVectorElt ( LegalizerHelper & Helper, MachineInstr & MI, SPIRVGlobalRegistry * GR ) static

Definition at line 449 of file SPIRVLegalizerInfo.cpp.

References llvm::MachineInstrBuilder::addUse(), llvm::MachineIRBuilder::buildIntrinsic(), MI, and llvm::LegalizerHelper::MIRBuilder.

Referenced by llvm::SPIRVLegalizerInfo::legalizeCustom().

typeOfExtendedScalars()

LegalityPredicate typeOfExtendedScalars ( unsigned TypeIdx,
bool IsExtendedInts )

Definition at line 33 of file SPIRVLegalizerInfo.cpp.

Referenced by llvm::SPIRVLegalizerInfo::SPIRVLegalizerInfo().