LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HexagonTargetObjectFile.h
Go to the documentation of this file.
1 //===-- HexagonTargetAsmInfo.h - Hexagon asm properties --------*- C++ -*--===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #ifndef HexagonTARGETOBJECTFILE_H
11 #define HexagonTARGETOBJECTFILE_H
12 
14 #include "llvm/MC/MCSectionELF.h"
15 
16 namespace llvm {
17 
19  const MCSectionELF *SmallDataSection;
20  const MCSectionELF *SmallBSSSection;
21  public:
22  virtual void Initialize(MCContext &Ctx, const TargetMachine &TM);
23 
24  /// IsGlobalInSmallSection - Return true if this global address should be
25  /// placed into small data/bss section.
26  bool IsGlobalInSmallSection(const GlobalValue *GV,
27  const TargetMachine &TM,
28  SectionKind Kind) const;
29  bool IsGlobalInSmallSection(const GlobalValue *GV,
30  const TargetMachine &TM) const;
31 
32  bool IsSmallDataEnabled () const;
34  SectionKind Kind,
35  Mangler *Mang,
36  const TargetMachine &TM) const;
37  };
38 
39 } // namespace llvm
40 
41 #endif
bool IsGlobalInSmallSection(const GlobalValue *GV, const TargetMachine &TM, SectionKind Kind) const
const MCSection * SelectSectionForGlobal(const GlobalValue *GV, SectionKind Kind, Mangler *Mang, const TargetMachine &TM) const
virtual void Initialize(MCContext &Ctx, const TargetMachine &TM)