mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-19 04:32:19 +00:00
f3d745cdc9
This lets us pass the symbol to the constructor and avoid the mutable field. This also opens the way for outputting the symbol only when needed, instead of outputting them at the start of the file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231859 91177308-0d34-0410-b5e6-96231b3b80d8
46 lines
1.4 KiB
C++
46 lines
1.4 KiB
C++
//===- NVPTXSection.h - NVPTX-specific section representation -*- C++ -*-===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// This file declares the NVPTXSection class.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_LIB_TARGET_NVPTX_NVPTXSECTION_H
|
|
#define LLVM_LIB_TARGET_NVPTX_NVPTXSECTION_H
|
|
|
|
#include "llvm/IR/GlobalVariable.h"
|
|
#include "llvm/MC/MCSection.h"
|
|
#include <vector>
|
|
|
|
namespace llvm {
|
|
/// NVPTXSection - Represents a section in PTX
|
|
/// PTX does not have sections. We create this class in order to use
|
|
/// the ASMPrint interface.
|
|
///
|
|
class NVPTXSection : public MCSection {
|
|
virtual void anchor();
|
|
public:
|
|
NVPTXSection(SectionVariant V, SectionKind K) : MCSection(V, K, nullptr) {}
|
|
virtual ~NVPTXSection() {}
|
|
|
|
/// Override this as NVPTX has its own way of printing switching
|
|
/// to a section.
|
|
void PrintSwitchToSection(const MCAsmInfo &MAI,
|
|
raw_ostream &OS,
|
|
const MCExpr *Subsection) const override {}
|
|
|
|
/// Base address of PTX sections is zero.
|
|
bool UseCodeAlign() const override { return false; }
|
|
bool isVirtualSection() const override { return false; }
|
|
};
|
|
|
|
} // end namespace llvm
|
|
|
|
#endif
|