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
18namespace llvm {
19class Triple;
20
21class NVPTXMCAsmInfo : public MCAsmInfo {
22 virtual void anchor();
23
24public:
25 explicit NVPTXMCAsmInfo(const Triple &TheTriple,
26 const MCTargetOptions &Options);
27
28 /// Return true if the .section directive should be omitted when
29 /// emitting \p SectionName. For example:
30 ///
31 /// shouldOmitSectionDirective(".text")
32 ///
33 /// returns false => .section .text,#alloc,#execinstr
34 /// returns true => .text
35 bool shouldOmitSectionDirective(StringRef SectionName) const override {
36 return true;
37 }
38};
39} // namespace llvm
40
41#endif
42