• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //===-- ARMAsmBackendELF.h  ARM Asm Backend ELF -----------------*- 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 #ifndef LLVM_LIB_TARGET_ARM_ELFARMASMBACKEND_H
11 #define LLVM_LIB_TARGET_ARM_ELFARMASMBACKEND_H
12 
13 #include "ARMAsmBackend.h"
14 #include "MCTargetDesc/ARMMCTargetDesc.h"
15 #include "llvm/MC/MCObjectWriter.h"
16 
17 using namespace llvm;
18 
19 namespace {
20 class ARMAsmBackendELF : public ARMAsmBackend {
21 public:
22   uint8_t OSABI;
ARMAsmBackendELF(const Target & T,const MCSubtargetInfo & STI,uint8_t OSABI,support::endianness Endian)23   ARMAsmBackendELF(const Target &T, const MCSubtargetInfo &STI, uint8_t OSABI,
24                    support::endianness Endian)
25       : ARMAsmBackend(T, STI, Endian), OSABI(OSABI) {}
26 
27   std::unique_ptr<MCObjectTargetWriter>
createObjectTargetWriter()28   createObjectTargetWriter() const override {
29     return createARMELFObjectWriter(OSABI);
30   }
31 };
32 }
33 
34 #endif
35