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(unsigned ByteAlignment, 19 const MCSubtargetInfo *STI, 20 unsigned MaxBytesToEmit = 0){}; emitFAlign(unsigned Size,unsigned MaxBytesToEmit)21 virtual void emitFAlign(unsigned Size, unsigned MaxBytesToEmit){}; emitCommonSymbolSorted(MCSymbol * Symbol,uint64_t Size,unsigned ByteAlignment,unsigned AccessGranularity)22 virtual void emitCommonSymbolSorted(MCSymbol *Symbol, uint64_t Size, 23 unsigned ByteAlignment, 24 unsigned AccessGranularity){}; emitLocalCommonSymbolSorted(MCSymbol * Symbol,uint64_t Size,unsigned ByteAlign,unsigned AccessGranularity)25 virtual void emitLocalCommonSymbolSorted(MCSymbol *Symbol, uint64_t Size, 26 unsigned ByteAlign, 27 unsigned AccessGranularity){}; 28 }; 29 } 30 31 #endif 32