PPCTargetObjectFile.h revision 263508
1214501Srpaulo//===-- PPCTargetObjectFile.h - PPC Object Info -----------------*- C++ -*-===// 2214501Srpaulo// 3214501Srpaulo// The LLVM Compiler Infrastructure 4214501Srpaulo// 5214501Srpaulo// This file is distributed under the University of Illinois Open Source 6214501Srpaulo// License. See LICENSE.TXT for details. 7214501Srpaulo// 8214501Srpaulo//===----------------------------------------------------------------------===// 9214501Srpaulo 10214501Srpaulo#ifndef LLVM_TARGET_PPC_TARGETOBJECTFILE_H 11214501Srpaulo#define LLVM_TARGET_PPC_TARGETOBJECTFILE_H 12214501Srpaulo 13214501Srpaulo#include "llvm/CodeGen/TargetLoweringObjectFileImpl.h" 14214501Srpaulo#include "llvm/Target/TargetLoweringObjectFile.h" 15214501Srpaulo#include "llvm/Target/TargetMachine.h" 16214501Srpaulo 17214501Srpaulonamespace llvm { 18214501Srpaulo 19214501Srpaulo /// PPC64LinuxTargetObjectFile - This implementation is used for 20214501Srpaulo /// 64-bit PowerPC Linux. 21214501Srpaulo class PPC64LinuxTargetObjectFile : public TargetLoweringObjectFileELF { 22214501Srpaulo 23214501Srpaulo virtual void Initialize(MCContext &Ctx, const TargetMachine &TM); 24214501Srpaulo 25214501Srpaulo virtual const MCSection * 26214501Srpaulo SelectSectionForGlobal(const GlobalValue *GV, SectionKind Kind, 27214501Srpaulo Mangler *Mang, const TargetMachine &TM) const; 28214501Srpaulo 29214501Srpaulo /// \brief Describe a TLS variable address within debug info. 30214501Srpaulo virtual const MCExpr *getDebugThreadLocalSymbol(const MCSymbol *Sym) const; 31214501Srpaulo }; 32214501Srpaulo 33214501Srpaulo} // end namespace llvm 34 35#endif 36