pass machinemoduleinfo down into getSymbolForDwarfGlobalReference,

currently unused.

llvm-svn: 82157
This commit is contained in:
Chris Lattner 2009-09-17 18:49:52 +00:00
parent 3aa2d7300b
commit a6ebba270d
5 changed files with 10 additions and 2 deletions

View File

@ -18,15 +18,16 @@
#include "llvm/MC/SectionKind.h"
namespace llvm {
class MachineModuleInfo;
class Mangler;
class MCAsmInfo;
class MCExpr;
class MCSection;
class MCSectionMachO;
class MCContext;
class GlobalValue;
class StringRef;
class TargetMachine;
class MCAsmInfo;
class MCExpr;
class TargetLoweringObjectFile {
MCContext *Ctx;
@ -188,6 +189,7 @@ public:
///
virtual const MCExpr *
getSymbolForDwarfGlobalReference(const GlobalValue *GV, Mangler *Mang,
MachineModuleInfo *MMI,
bool &IsIndirect, bool &IsPCRel) const;
protected:
@ -320,6 +322,7 @@ public:
/// defaults to returning a stub reference.
virtual const MCExpr *
getSymbolForDwarfGlobalReference(const GlobalValue *GV, Mangler *Mang,
MachineModuleInfo *MMI,
bool &IsIndirect, bool &IsPCRel) const;
};

View File

@ -121,6 +121,7 @@ void DwarfException::EmitCIE(const Function *PersonalityFn, unsigned Index) {
// In non-static mode, ask the object file how to represent this reference.
PersonalityRef =
TLOF.getSymbolForDwarfGlobalReference(PersonalityFn, Asm->Mang,
Asm->MMI,
IsPersonalityIndirect,
IsPersonalityPCRel);
}

View File

@ -290,6 +290,7 @@ TargetLoweringObjectFile::getSectionForConstant(SectionKind Kind) const {
///
const MCExpr *TargetLoweringObjectFile::
getSymbolForDwarfGlobalReference(const GlobalValue *GV, Mangler *Mang,
MachineModuleInfo *MMI,
bool &IsIndirect, bool &IsPCRel) const {
// The generic implementation of this just returns a direct reference to the
// symbol.
@ -956,6 +957,7 @@ shouldEmitUsedDirectiveFor(const GlobalValue *GV, Mangler *Mang) const {
const MCExpr *TargetLoweringObjectFileMachO::
getSymbolForDwarfGlobalReference(const GlobalValue *GV, Mangler *Mang,
MachineModuleInfo *MMI,
bool &IsIndirect, bool &IsPCRel) const {
// The mach-o version of this method defaults to returning a stub reference.
IsIndirect = true;

View File

@ -15,6 +15,7 @@ using namespace llvm;
const MCExpr *X8664_MachoTargetObjectFile::
getSymbolForDwarfGlobalReference(const GlobalValue *GV, Mangler *Mang,
MachineModuleInfo *MMI,
bool &IsIndirect, bool &IsPCRel) const {
// On Darwin/X86-64, we can reference dwarf symbols with foo@GOTPCREL+4, which

View File

@ -21,6 +21,7 @@ namespace llvm {
virtual const MCExpr *
getSymbolForDwarfGlobalReference(const GlobalValue *GV, Mangler *Mang,
MachineModuleInfo *MMI,
bool &IsIndirect, bool &IsPCRel) const;
};
} // end namespace llvm