1 //===- AArch64TargetStreamer.cpp - AArch64TargetStreamer class ------------===// 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 AArch64TargetStreamer class. 11 // 12 //===----------------------------------------------------------------------===// 13 14 #include "AArch64TargetStreamer.h" 15 #include "llvm/MC/ConstantPools.h" 16 17 using namespace llvm; 18 19 // 20 // AArch64TargetStreamer Implemenation 21 // 22 AArch64TargetStreamer::AArch64TargetStreamer(MCStreamer &S) 23 : MCTargetStreamer(S), ConstantPools(new AssemblerConstantPools()) {} 24 25 AArch64TargetStreamer::~AArch64TargetStreamer() = default; 26 27 // The constant pool handling is shared by all AArch64TargetStreamer 28 // implementations. 29 const MCExpr *AArch64TargetStreamer::addConstantPoolEntry(const MCExpr *Expr, 30 unsigned Size, 31 SMLoc Loc) { 32 return ConstantPools->addEntry(Streamer, Expr, Size, Loc); 33 } 34 35 void AArch64TargetStreamer::emitCurrentConstantPool() { 36 ConstantPools->emitForCurrentSection(Streamer); 37 } 38 39 // finish() - write out any non-empty assembler constant pools. 40 void AArch64TargetStreamer::finish() { ConstantPools->emitAll(Streamer); } 41 42 void AArch64TargetStreamer::emitInst(uint32_t Inst) {} 43