LLVM  13.0.0git
Functions | Variables
AMDGPUAsmPrinter.cpp File Reference
#include "AMDGPUAsmPrinter.h"
#include "AMDGPU.h"
#include "AMDGPUHSAMetadataStreamer.h"
#include "AMDKernelCodeT.h"
#include "GCNSubtarget.h"
#include "MCTargetDesc/AMDGPUInstPrinter.h"
#include "MCTargetDesc/AMDGPUTargetStreamer.h"
#include "R600AsmPrinter.h"
#include "SIMachineFunctionInfo.h"
#include "TargetInfo/AMDGPUTargetInfo.h"
#include "Utils/AMDGPUBaseInfo.h"
#include "llvm/IR/DiagnosticInfo.h"
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCSectionELF.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/Support/AMDHSAKernelDescriptor.h"
#include "llvm/Support/TargetRegistry.h"
#include "llvm/Target/TargetLoweringObjectFile.h"
#include "llvm/Target/TargetMachine.h"
Include dependency graph for AMDGPUAsmPrinter.cpp:

Go to the source code of this file.

Functions

static uint32_t getFPMode (AMDGPU::SIModeRegisterDefaults Mode)
 
static AsmPrintercreateAMDGPUAsmPrinterPass (TargetMachine &tm, std::unique_ptr< MCStreamer > &&Streamer)
 
void LLVM_EXTERNAL_VISIBILITY LLVMInitializeAMDGPUAsmPrinter ()
 
static bool hasAnyNonFlatUseOfReg (const MachineRegisterInfo &MRI, const SIInstrInfo &TII, unsigned Reg)
 
static const FunctiongetCalleeFunction (const MachineOperand &Op)
 
static unsigned getRsrcReg (CallingConv::ID CallConv)
 
static amd_element_byte_size_t getElementByteSizeValue (unsigned Size)
 

Variables

static cl::opt< uint32_tAssumedStackSizeForExternalCall ("amdgpu-assume-external-call-stack-size", cl::desc("Assumed stack use of any external call (in bytes)"), cl::Hidden, cl::init(16384))
 
static cl::opt< uint32_tAssumedStackSizeForDynamicSizeObjects ("amdgpu-assume-dynamic-stack-object-size", cl::desc("Assumed extra stack use if there are any " "variable sized objects (in bytes)"), cl::Hidden, cl::init(4096))
 

Detailed Description

The AMDGPUAsmPrinter is used to print both assembly string and also binary code. When passed an MCAsmStreamer it prints assembly and when passed an MCObjectStreamer it outputs binary code.

Definition in file AMDGPUAsmPrinter.cpp.

Function Documentation

◆ createAMDGPUAsmPrinterPass()

static AsmPrinter* createAMDGPUAsmPrinterPass ( TargetMachine tm,
std::unique_ptr< MCStreamer > &&  Streamer 
)
static

Definition at line 86 of file AMDGPUAsmPrinter.cpp.

References move.

Referenced by LLVMInitializeAMDGPUAsmPrinter().

◆ getCalleeFunction()

static const Function* getCalleeFunction ( const MachineOperand Op)
static

Definition at line 705 of file AMDGPUAsmPrinter.cpp.

References assert().

◆ getElementByteSizeValue()

static amd_element_byte_size_t getElementByteSizeValue ( unsigned  Size)
static

◆ getFPMode()

static uint32_t getFPMode ( AMDGPU::SIModeRegisterDefaults  Mode)
static

◆ getRsrcReg()

static unsigned getRsrcReg ( CallingConv::ID  CallConv)
static

◆ hasAnyNonFlatUseOfReg()

static bool hasAnyNonFlatUseOfReg ( const MachineRegisterInfo MRI,
const SIInstrInfo TII,
unsigned  Reg 
)
static

Definition at line 681 of file AMDGPUAsmPrinter.cpp.

References MRI, Reg, llvm::MachineRegisterInfo::reg_operands(), and TII.

◆ LLVMInitializeAMDGPUAsmPrinter()

void LLVM_EXTERNAL_VISIBILITY LLVMInitializeAMDGPUAsmPrinter ( )

Variable Documentation

◆ AssumedStackSizeForDynamicSizeObjects

cl::opt<uint32_t> AssumedStackSizeForDynamicSizeObjects("amdgpu-assume-dynamic-stack-object-size", cl::desc("Assumed extra stack use if there are any " "variable sized objects (in bytes)"), cl::Hidden, cl::init(4096))
static

◆ AssumedStackSizeForExternalCall

cl::opt<uint32_t> AssumedStackSizeForExternalCall("amdgpu-assume-external-call-stack-size", cl::desc("Assumed stack use of any external call (in bytes)"), cl::Hidden, cl::init(16384))
static