diff options
| author | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2012-10-15 15:43:14 +0000 |
|---|---|---|
| committer | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2012-10-15 15:43:14 +0000 |
| commit | ef206f19a4be428092b173339df138a3c17e1687 (patch) | |
| tree | 6c28b192c082a822564215065c28bfd425bf0f35 /llvm/lib/MC/MCAsmStreamer.cpp | |
| parent | 7b03290c437177cce12a3774651f94af9ecb41df (diff) | |
| download | bcm5719-llvm-ef206f19a4be428092b173339df138a3c17e1687.tar.gz bcm5719-llvm-ef206f19a4be428092b173339df138a3c17e1687.zip | |
PowerPC: add EmitTCEntry class for TOC creation
This patch replaces the EmitRawText by a EmitTCEntry class (specialized for
each Streamer) in PowerPC64 TOC entry creation.
llvm-svn: 165940
Diffstat (limited to 'llvm/lib/MC/MCAsmStreamer.cpp')
| -rw-r--r-- | llvm/lib/MC/MCAsmStreamer.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCAsmStreamer.cpp b/llvm/lib/MC/MCAsmStreamer.cpp index b0bc2900ecb..17a6323d0e7 100644 --- a/llvm/lib/MC/MCAsmStreamer.cpp +++ b/llvm/lib/MC/MCAsmStreamer.cpp @@ -251,6 +251,7 @@ public: virtual void EmitPad(int64_t Offset); virtual void EmitRegSave(const SmallVectorImpl<unsigned> &RegList, bool); + virtual void EmitTCEntry(const MCSymbol &S); virtual void EmitInstruction(const MCInst &Inst); @@ -1299,6 +1300,14 @@ void MCAsmStreamer::EmitRegSave(const SmallVectorImpl<unsigned> &RegList, EmitEOL(); } +void MCAsmStreamer::EmitTCEntry(const MCSymbol &S) { + OS << "\t.tc "; + OS << S.getName(); + OS << "[TC],"; + OS << S.getName(); + EmitEOL(); +} + void MCAsmStreamer::EmitInstruction(const MCInst &Inst) { assert(getCurrentSection() && "Cannot emit contents before setting section!"); |

