blob: 0cb795ba3cccde5507109c0a083e68bf49812b48 [file] [log] [blame]
David Peixottob9b73622014-02-04 17:22:40 +00001//===- ARMTargetStreamer.cpp - ARMTargetStreamer class --*- 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 the ARMTargetStreamer class.
11//
12//===----------------------------------------------------------------------===//
13#include "llvm/ADT/MapVector.h"
Weiming Zhao8c899732014-06-18 18:17:25 +000014#include "llvm/MC/ConstantPools.h"
David Peixottob9b73622014-02-04 17:22:40 +000015#include "llvm/MC/MCContext.h"
Chandler Carruth442f7842014-03-04 10:07:28 +000016#include "llvm/MC/MCExpr.h"
17#include "llvm/MC/MCStreamer.h"
David Peixottob9b73622014-02-04 17:22:40 +000018
19using namespace llvm;
David Peixottob9b73622014-02-04 17:22:40 +000020//
21// ARMTargetStreamer Implemenation
22//
23ARMTargetStreamer::ARMTargetStreamer(MCStreamer &S)
24 : MCTargetStreamer(S), ConstantPools(new AssemblerConstantPools()) {}
25
26ARMTargetStreamer::~ARMTargetStreamer() {}
27
28// The constant pool handling is shared by all ARMTargetStreamer
29// implementations.
30const MCExpr *ARMTargetStreamer::addConstantPoolEntry(const MCExpr *Expr) {
31 return ConstantPools->addEntry(Streamer, Expr);
32}
33
34void ARMTargetStreamer::emitCurrentConstantPool() {
35 ConstantPools->emitForCurrentSection(Streamer);
36}
37
38// finish() - write out any non-empty assembler constant pools.
39void ARMTargetStreamer::finish() { ConstantPools->emitAll(Streamer); }
40
41// The remaining callbacks should be handled separately by each
42// streamer.
43void ARMTargetStreamer::emitFnStart() {
44 llvm_unreachable("unimplemented");
45}
46void ARMTargetStreamer::emitFnEnd() {
47 llvm_unreachable("unimplemented");
48}
49void ARMTargetStreamer::emitCantUnwind() {
50 llvm_unreachable("unimplemented");
51}
52void ARMTargetStreamer::emitPersonality(const MCSymbol *Personality) {
53 llvm_unreachable("unimplemented");
54}
55void ARMTargetStreamer::emitPersonalityIndex(unsigned Index) {
56 llvm_unreachable("unimplemented");
57}
58void ARMTargetStreamer::emitHandlerData() {
59 llvm_unreachable("unimplemented");
60}
61void ARMTargetStreamer::emitSetFP(unsigned FpReg, unsigned SpReg,
62 int64_t Offset) {
63 llvm_unreachable("unimplemented");
64}
65void ARMTargetStreamer::emitMovSP(unsigned Reg, int64_t Offset) {
66 llvm_unreachable("unimplemented");
67}
68void ARMTargetStreamer::emitPad(int64_t Offset) {
69 llvm_unreachable("unimplemented");
70}
71void
72ARMTargetStreamer::emitRegSave(const SmallVectorImpl<unsigned> &RegList,
73 bool isVector) {
74 llvm_unreachable("unimplemented");
75}
76void ARMTargetStreamer::emitUnwindRaw(
77 int64_t StackOffset, const SmallVectorImpl<uint8_t> &Opcodes) {
78 llvm_unreachable("unimplemented");
79}
80void ARMTargetStreamer::switchVendor(StringRef Vendor) {
81 llvm_unreachable("unimplemented");
82}
83void ARMTargetStreamer::emitAttribute(unsigned Attribute, unsigned Value) {
84 llvm_unreachable("unimplemented");
85}
86void ARMTargetStreamer::emitTextAttribute(unsigned Attribute,
87 StringRef String) {
88 llvm_unreachable("unimplemented");
89}
90void ARMTargetStreamer::emitIntTextAttribute(unsigned Attribute,
91 unsigned IntValue,
92 StringRef StringValue) {
93 llvm_unreachable("unimplemented");
94}
95void ARMTargetStreamer::emitArch(unsigned Arch) {
96 llvm_unreachable("unimplemented");
97}
98void ARMTargetStreamer::emitObjectArch(unsigned Arch) {
99 llvm_unreachable("unimplemented");
100}
101void ARMTargetStreamer::emitFPU(unsigned FPU) {
102 llvm_unreachable("unimplemented");
103}
104void ARMTargetStreamer::finishAttributeSection() {
105 llvm_unreachable("unimplemented");
106}
107void ARMTargetStreamer::emitInst(uint32_t Inst, char Suffix) {
108 llvm_unreachable("unimplemented");
109}
110void ARMTargetStreamer::AnnotateTLSDescriptorSequence(
111 const MCSymbolRefExpr *SRE) {
112 llvm_unreachable("unimplemented");
113}
Rafael Espindola466d6632014-04-27 20:23:58 +0000114
115void ARMTargetStreamer::emitThumbSet(MCSymbol *Symbol, const MCExpr *Value) {
116 llvm_unreachable("unimplemented");
117}