1 //===-- llvm/MC/MachObjectWriter.h - Mach-O File Writer ---------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef LLVM_MC_MACHOBJECTWRITER_H
11 #define LLVM_MC_MACHOBJECTWRITER_H
13 #include "llvm/MC/MCObjectWriter.h"
14 #include "llvm/Support/raw_ostream.h"
24 class MachObjectWriter
: public MCObjectWriter
{
28 MachObjectWriter(raw_ostream
&OS
, bool Is64Bit
, bool IsLittleEndian
= true);
29 virtual ~MachObjectWriter();
31 virtual void ExecutePostLayoutBinding(MCAssembler
&Asm
);
33 virtual void RecordRelocation(const MCAssembler
&Asm
,
34 const MCAsmLayout
&Layout
,
35 const MCFragment
*Fragment
,
36 const MCFixup
&Fixup
, MCValue Target
,
37 uint64_t &FixedValue
);
39 virtual void WriteObject(const MCAssembler
&Asm
, const MCAsmLayout
&Layout
);
42 } // End llvm namespace