1//===-- AMDGPUAsmPrinter.h - Print AMDGPU assembly code -------------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// AMDGPU Assembly printer class. 11// 12//===----------------------------------------------------------------------===// 13 14#ifndef AMDGPU_ASMPRINTER_H 15#define AMDGPU_ASMPRINTER_H 16 17#include "llvm/CodeGen/AsmPrinter.h" 18 19namespace llvm { 20 21class AMDGPUAsmPrinter : public AsmPrinter { 22 23public: 24 explicit AMDGPUAsmPrinter(TargetMachine &TM, MCStreamer &Streamer) 25 : AsmPrinter(TM, Streamer) { } 26 27 virtual bool runOnMachineFunction(MachineFunction &MF); 28 29 virtual const char *getPassName() const { 30 return "AMDGPU Assembly Printer"; 31 } 32 33 /// EmitProgramInfo - Emit register usage information so that the GPU driver 34 /// can correctly setup the GPU state. 35 void EmitProgramInfo(MachineFunction &MF); 36 37 /// EmitInstuction - Implemented in AMDGPUMCInstLower.cpp 38 virtual void EmitInstruction(const MachineInstr *MI); 39}; 40 41} // End anonymous llvm 42 43#endif //AMDGPU_ASMPRINTER_H 44