Home | History | Annotate | Line # | Download | only in PowerPC
      1 //===-- PPCTargetObjectFile.h - PPC Object Info -----------------*- 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 #ifndef LLVM_LIB_TARGET_POWERPC_PPCTARGETOBJECTFILE_H
     10 #define LLVM_LIB_TARGET_POWERPC_PPCTARGETOBJECTFILE_H
     11 
     12 #include "llvm/CodeGen/TargetLoweringObjectFileImpl.h"
     13 #include "llvm/Target/TargetLoweringObjectFile.h"
     14 #include "llvm/Target/TargetMachine.h"
     15 
     16 namespace llvm {
     17 
     18   /// PPC64LinuxTargetObjectFile - This implementation is used for
     19   /// 64-bit PowerPC Linux.
     20   class PPC64LinuxTargetObjectFile : public TargetLoweringObjectFileELF {
     21 
     22     void Initialize(MCContext &Ctx, const TargetMachine &TM) override;
     23 
     24     MCSection *SelectSectionForGlobal(const GlobalObject *GO, SectionKind Kind,
     25                                       const TargetMachine &TM) const override;
     26 
     27     /// Describe a TLS variable address within debug info.
     28     const MCExpr *getDebugThreadLocalSymbol(const MCSymbol *Sym) const override;
     29   };
     30 
     31 }  // end namespace llvm
     32 
     33 #endif
     34