xref: /freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/HexagonTargetStreamer.h (revision 0fca6ea1d4eea4c934cfff25ac9ee8ad6fe95583)
1 //===-- HexagonTargetStreamer.h - Hexagon Target Streamer ------*- C++ -*--===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef HEXAGONTARGETSTREAMER_H
10 #define HEXAGONTARGETSTREAMER_H
11 
12 #include "llvm/MC/MCStreamer.h"
13 
14 namespace llvm {
15 class HexagonTargetStreamer : public MCTargetStreamer {
16 public:
HexagonTargetStreamer(MCStreamer & S)17   HexagonTargetStreamer(MCStreamer &S) : MCTargetStreamer(S) {}
18   virtual void emitCodeAlignment(Align Alignment, const MCSubtargetInfo *STI,
19                                  unsigned MaxBytesToEmit = 0){};
emitFAlign(unsigned Size,unsigned MaxBytesToEmit)20   virtual void emitFAlign(unsigned Size, unsigned MaxBytesToEmit){};
emitCommonSymbolSorted(MCSymbol * Symbol,uint64_t Size,unsigned ByteAlignment,unsigned AccessGranularity)21   virtual void emitCommonSymbolSorted(MCSymbol *Symbol, uint64_t Size,
22                                       unsigned ByteAlignment,
23                                       unsigned AccessGranularity){};
emitLocalCommonSymbolSorted(MCSymbol * Symbol,uint64_t Size,unsigned ByteAlign,unsigned AccessGranularity)24   virtual void emitLocalCommonSymbolSorted(MCSymbol *Symbol, uint64_t Size,
25                                            unsigned ByteAlign,
26                                            unsigned AccessGranularity){};
finish()27   void finish() override {}
28 
finishAttributeSection()29   virtual void finishAttributeSection() {}
30 
emitAttribute(unsigned Attribute,unsigned Value)31   virtual void emitAttribute(unsigned Attribute, unsigned Value) {}
32 
33   void emitTargetAttributes(const MCSubtargetInfo &STI);
34 
reset()35   virtual void reset() {}
36 };
37 }
38 
39 #endif
40