1//=== MipsELFStreamer.h - MipsELFStreamer ------------------------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENCE.TXT for details. 7// 8//===-------------------------------------------------------------------===// 9#ifndef MIPSELFSTREAMER_H_ 10#define MIPSELFSTREAMER_H_ 11 12#include "llvm/MC/MCELFStreamer.h" 13 14namespace llvm { 15class MipsAsmPrinter; 16class MipsSubtarget; 17class MCSymbol; 18 19class MipsELFStreamer : public MCELFStreamer { 20public: 21 MipsELFStreamer(MCContext &Context, MCAsmBackend &TAB, 22 raw_ostream &OS, MCCodeEmitter *Emitter, 23 bool RelaxAll, bool NoExecStack) 24 : MCELFStreamer(SK_MipsELFStreamer, Context, TAB, OS, Emitter) { 25 } 26 27 ~MipsELFStreamer() {} 28 void emitELFHeaderFlagsCG(const MipsSubtarget &Subtarget); 29 void emitMipsSTOCG(const MipsSubtarget &Subtarget, 30 MCSymbol *Sym, 31 unsigned Val); 32 33 static bool classof(const MCStreamer *S) { 34 return S->getKind() == SK_MipsELFStreamer; 35 } 36}; 37 38 MCELFStreamer* createMipsELFStreamer(MCContext &Context, MCAsmBackend &TAB, 39 raw_ostream &OS, MCCodeEmitter *Emitter, 40 bool RelaxAll, bool NoExecStack); 41} 42 43#endif /* MIPSELFSTREAMER_H_ */ 44