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