xref: /freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/PPCTargetStreamer.h (revision bdd1243df58e60e85101c09001d9812a789b6bc4)
10b57cec5SDimitry Andric //===- PPCTargetStreamer.h - PPC Target Streamer ----------------*- C++ -*-===//
20b57cec5SDimitry Andric //
30b57cec5SDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
40b57cec5SDimitry Andric // See https://llvm.org/LICENSE.txt for license information.
50b57cec5SDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
60b57cec5SDimitry Andric //
70b57cec5SDimitry Andric //===----------------------------------------------------------------------===//
80b57cec5SDimitry Andric 
90b57cec5SDimitry Andric #ifndef LLVM_LIB_TARGET_POWERPC_PPCTARGETSTREAMER_H
100b57cec5SDimitry Andric #define LLVM_LIB_TARGET_POWERPC_PPCTARGETSTREAMER_H
110b57cec5SDimitry Andric 
120b57cec5SDimitry Andric #include "llvm/ADT/StringRef.h"
1381ad6265SDimitry Andric #include "llvm/MC/MCExpr.h"
140b57cec5SDimitry Andric #include "llvm/MC/MCStreamer.h"
150b57cec5SDimitry Andric 
160b57cec5SDimitry Andric namespace llvm {
170b57cec5SDimitry Andric 
180b57cec5SDimitry Andric class MCExpr;
190b57cec5SDimitry Andric class MCSymbol;
200b57cec5SDimitry Andric class MCSymbolELF;
210b57cec5SDimitry Andric 
220b57cec5SDimitry Andric class PPCTargetStreamer : public MCTargetStreamer {
230b57cec5SDimitry Andric public:
240b57cec5SDimitry Andric   PPCTargetStreamer(MCStreamer &S);
250b57cec5SDimitry Andric   ~PPCTargetStreamer() override;
260b57cec5SDimitry Andric 
emitTCEntry(const MCSymbol & S,MCSymbolRefExpr::VariantKind Kind)27fe6060f1SDimitry Andric   virtual void emitTCEntry(const MCSymbol &S,
28*bdd1243dSDimitry Andric                            MCSymbolRefExpr::VariantKind Kind){};
emitMachine(StringRef CPU)29*bdd1243dSDimitry Andric   virtual void emitMachine(StringRef CPU){};
emitAbiVersion(int AbiVersion)30*bdd1243dSDimitry Andric   virtual void emitAbiVersion(int AbiVersion){};
emitLocalEntry(MCSymbolELF * S,const MCExpr * LocalOffset)31*bdd1243dSDimitry Andric   virtual void emitLocalEntry(MCSymbolELF *S, const MCExpr *LocalOffset){};
320b57cec5SDimitry Andric };
330b57cec5SDimitry Andric 
340b57cec5SDimitry Andric } // end namespace llvm
350b57cec5SDimitry Andric 
360b57cec5SDimitry Andric #endif // LLVM_LIB_TARGET_POWERPC_PPCTARGETSTREAMER_H
37