1 //===-- NVPTXMCAsmInfo.h - NVPTX asm properties ----------------*- 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 // This file contains the declaration of the NVPTXMCAsmInfo class. 10 // 11 //===----------------------------------------------------------------------===// 12 13 #ifndef LLVM_LIB_TARGET_NVPTX_MCTARGETDESC_NVPTXMCASMINFO_H 14 #define LLVM_LIB_TARGET_NVPTX_MCTARGETDESC_NVPTXMCASMINFO_H 15 16 #include "llvm/MC/MCAsmInfo.h" 17 18 namespace llvm { 19 class Target; 20 class Triple; 21 22 class NVPTXMCAsmInfo : public MCAsmInfo { 23 virtual void anchor(); 24 25 public: 26 explicit NVPTXMCAsmInfo(const Triple &TheTriple, 27 const MCTargetOptions &Options); 28 29 /// Return true if the .section directive should be omitted when 30 /// emitting \p SectionName. For example: 31 /// 32 /// shouldOmitSectionDirective(".text") 33 /// 34 /// returns false => .section .text,#alloc,#execinstr 35 /// returns true => .text 36 bool shouldOmitSectionDirective(StringRef SectionName) const override { 37 return true; 38 } 39 }; 40 } // namespace llvm 41 42 #endif 43