1//===- MCSectionDXContainer.h - DXContainer MC Sections ---------*- 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 declares the MCSectionDXContainer class.
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef LLVM_MC_MCSECTIONDXCONTAINER_H
14#define LLVM_MC_MCSECTIONDXCONTAINER_H
15
16#include "llvm/MC/MCSection.h"
17#include "llvm/MC/SectionKind.h"
18
19namespace llvm {
20
21class MCSymbol;
22
23class MCSectionDXContainer final : public MCSection {
24 friend class MCContext;
25
26 MCSectionDXContainer(StringRef Name, SectionKind K, MCSymbol *Begin)
27 : MCSection(SV_DXContainer, Name, K.isText(), /*IsVirtual=*/false,
28 Begin) {}
29
30public:
31 void printSwitchToSection(const MCAsmInfo &, const Triple &, raw_ostream &,
32 uint32_t) const override;
33 bool useCodeAlign() const override { return false; }
34};
35
36} // end namespace llvm
37
38#endif // LLVM_MC_MCSECTIONDXCONTAINER_H
39