1 //===-- AArch64WinCOFFStreamer.h - WinCOFF Streamer for AArch64 -*- C++ -*-===// 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 // This file implements WinCOFF streamer information for the AArch64 backend. 11 // 12 //===----------------------------------------------------------------------===// 13 14 #ifndef LLVM_LIB_TARGET_AARCH64_MCTARGETDESC_AARCH64WINCOFFSTREAMER_H 15 #define LLVM_LIB_TARGET_AARCH64_MCTARGETDESC_AARCH64WINCOFFSTREAMER_H 16 17 #include "AArch64TargetStreamer.h" 18 #include "llvm/MC/MCWinCOFFStreamer.h" 19 20 namespace { 21 class AArch64WinCOFFStreamer; 22 23 class AArch64TargetWinCOFFStreamer : public llvm::AArch64TargetStreamer { 24 private: 25 AArch64WinCOFFStreamer &getStreamer(); 26 27 public: AArch64TargetWinCOFFStreamer(llvm::MCStreamer & S)28 AArch64TargetWinCOFFStreamer(llvm::MCStreamer &S) 29 : AArch64TargetStreamer(S) {} 30 }; 31 32 } // end anonymous namespace 33 34 namespace llvm { 35 36 MCWinCOFFStreamer *createAArch64WinCOFFStreamer( 37 MCContext &Context, std::unique_ptr<MCAsmBackend> TAB, 38 std::unique_ptr<MCObjectWriter> OW, std::unique_ptr<MCCodeEmitter> Emitter, 39 bool RelaxAll, bool IncrementalLinkerCompatible); 40 } // end llvm namespace 41 42 #endif 43