| OLD | NEW |
| 1 //===- MCELFStreamer.h - MCStreamer ELF Object File Interface ---*- C++ -*-===// | 1 //===- MCELFStreamer.h - MCStreamer ELF Object File Interface ---*- C++ -*-===// |
| 2 // | 2 // |
| 3 // The LLVM Compiler Infrastructure | 3 // The LLVM Compiler Infrastructure |
| 4 // | 4 // |
| 5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
| 6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
| 7 // | 7 // |
| 8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
| 9 | 9 |
| 10 #ifndef LLVM_MC_MCELFSTREAMER_H | 10 #ifndef LLVM_MC_MCELFSTREAMER_H |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 93 void EmitBundleAlignMode(unsigned AlignPow2) override; | 93 void EmitBundleAlignMode(unsigned AlignPow2) override; |
| 94 void EmitBundleLock(bool AlignToEnd) override; | 94 void EmitBundleLock(bool AlignToEnd) override; |
| 95 void EmitBundleUnlock() override; | 95 void EmitBundleUnlock() override; |
| 96 | 96 |
| 97 private: | 97 private: |
| 98 void EmitInstToFragment(const MCInst &Inst, const MCSubtargetInfo &) override; | 98 void EmitInstToFragment(const MCInst &Inst, const MCSubtargetInfo &) override; |
| 99 void EmitInstToData(const MCInst &Inst, const MCSubtargetInfo &) override; | 99 void EmitInstToData(const MCInst &Inst, const MCSubtargetInfo &) override; |
| 100 | 100 |
| 101 void fixSymbolsInTLSFixups(const MCExpr *expr); | 101 void fixSymbolsInTLSFixups(const MCExpr *expr); |
| 102 | 102 |
| 103 /// \brief Merge the content of the fragment \p EF into the fragment \p DF. |
| 104 void mergeFragment(MCDataFragment *, MCEncodedFragmentWithFixups *); |
| 105 |
| 103 bool SeenIdent; | 106 bool SeenIdent; |
| 104 | 107 |
| 105 struct LocalCommon { | 108 struct LocalCommon { |
| 106 MCSymbolData *SD; | 109 MCSymbolData *SD; |
| 107 uint64_t Size; | 110 uint64_t Size; |
| 108 unsigned ByteAlignment; | 111 unsigned ByteAlignment; |
| 109 }; | 112 }; |
| 110 | 113 |
| 111 std::vector<LocalCommon> LocalCommons; | 114 std::vector<LocalCommon> LocalCommons; |
| 112 | 115 |
| 113 SmallPtrSet<MCSymbol *, 16> BindingExplicitlySet; | 116 SmallPtrSet<MCSymbol *, 16> BindingExplicitlySet; |
| 117 |
| 118 /// BundleGroups - The stack of fragments holding the bundle-locked |
| 119 /// instructions. |
| 120 llvm::SmallVector<MCDataFragment *, 4> BundleGroups; |
| 114 }; | 121 }; |
| 115 | 122 |
| 116 MCELFStreamer *createARMELFStreamer(MCContext &Context, MCAsmBackend &TAB, | 123 MCELFStreamer *createARMELFStreamer(MCContext &Context, MCAsmBackend &TAB, |
| 117 raw_ostream &OS, MCCodeEmitter *Emitter, | 124 raw_ostream &OS, MCCodeEmitter *Emitter, |
| 118 bool RelaxAll, bool IsThumb); | 125 bool RelaxAll, bool IsThumb); |
| 119 | 126 |
| 120 } // end namespace llvm | 127 } // end namespace llvm |
| 121 | 128 |
| 122 #endif | 129 #endif |
| OLD | NEW |