summaryrefslogtreecommitdiff
path: root/include/llvm
diff options
context:
space:
mode:
authorDaniel Jasper <djasper@google.com>2014-02-19 12:26:01 +0000
committerDaniel Jasper <djasper@google.com>2014-02-19 12:26:01 +0000
commit9a925861144fba3497f4b6142cdaa70807e3f1e3 (patch)
treed073a52aa68e9578cb882689bffb4c58d3204eab /include/llvm
parent1f55e40aa5f8a7ee10d994f46ac0a2bd1d08ef21 (diff)
downloadllvm-9a925861144fba3497f4b6142cdaa70807e3f1e3.tar.gz
llvm-9a925861144fba3497f4b6142cdaa70807e3f1e3.tar.bz2
llvm-9a925861144fba3497f4b6142cdaa70807e3f1e3.tar.xz
Revert r201622 and r201608.
This causes the LLVMgold plugin to segfault. More information on the replies to r201608. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201669 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm')
-rw-r--r--include/llvm/CodeGen/AsmPrinter.h3
-rw-r--r--include/llvm/CodeGen/TargetLoweringObjectFileImpl.h25
-rw-r--r--include/llvm/IR/Mangler.h7
-rw-r--r--include/llvm/Target/TargetLowering.h6
-rw-r--r--include/llvm/Target/TargetLoweringObjectFile.h36
5 files changed, 29 insertions, 48 deletions
diff --git a/include/llvm/CodeGen/AsmPrinter.h b/include/llvm/CodeGen/AsmPrinter.h
index 8a46d33171..79c7fec3ce 100644
--- a/include/llvm/CodeGen/AsmPrinter.h
+++ b/include/llvm/CodeGen/AsmPrinter.h
@@ -161,9 +161,6 @@ namespace llvm {
/// getCurrentSection() - Return the current section we are emitting to.
const MCSection *getCurrentSection() const;
- void getNameWithPrefix(SmallVectorImpl<char> &Name,
- const GlobalValue *GV) const;
-
MCSymbol *getSymbol(const GlobalValue *GV) const;
//===------------------------------------------------------------------===//
diff --git a/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h b/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
index d329ddd9a7..a2179fb490 100644
--- a/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
+++ b/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
@@ -57,15 +57,14 @@ public:
/// Return an MCExpr to use for a reference to the specified type info global
/// variable from exception handling information.
- const MCExpr *
- getTTypeGlobalReference(const GlobalValue *GV, unsigned Encoding,
- Mangler &Mang, const TargetMachine &TM,
- MachineModuleInfo *MMI, MCStreamer &Streamer) const
+ const MCExpr *getTTypeGlobalReference(const GlobalValue *GV,
+ unsigned Encoding, Mangler &Mang,
+ MachineModuleInfo *MMI,
+ MCStreamer &Streamer) const
LLVM_OVERRIDE;
// The symbol that gets passed to .cfi_personality.
MCSymbol *getCFIPersonalitySymbol(const GlobalValue *GV, Mangler &Mang,
- const TargetMachine &TM,
MachineModuleInfo *MMI) const LLVM_OVERRIDE;
void InitializeELF(bool UseInitArray_);
@@ -91,9 +90,6 @@ public:
Mangler &Mang, const TargetMachine &TM) const
LLVM_OVERRIDE;
- bool isSectionAtomizableBySymbols(const MCSection &Section) const
- LLVM_OVERRIDE;
-
const MCSection *SelectSectionForGlobal(const GlobalValue *GV,
SectionKind Kind, Mangler &Mang,
const TargetMachine &TM) const
@@ -109,19 +105,18 @@ public:
/// This hook allows targets to selectively decide not to emit the
/// UsedDirective for some symbols in llvm.used.
/// FIXME: REMOVE this (rdar://7071300)
- bool shouldEmitUsedDirectiveFor(const GlobalValue *GV, Mangler &Mang,
- TargetMachine &TM) const LLVM_OVERRIDE;
+ bool shouldEmitUsedDirectiveFor(const GlobalValue *GV, Mangler &Mang) const
+ LLVM_OVERRIDE;
/// The mach-o version of this method defaults to returning a stub reference.
- const MCExpr *
- getTTypeGlobalReference(const GlobalValue *GV, unsigned Encoding,
- Mangler &Mang, const TargetMachine &TM,
- MachineModuleInfo *MMI, MCStreamer &Streamer) const
+ const MCExpr *getTTypeGlobalReference(const GlobalValue *GV,
+ unsigned Encoding, Mangler &Mang,
+ MachineModuleInfo *MMI,
+ MCStreamer &Streamer) const
LLVM_OVERRIDE;
// The symbol that gets passed to .cfi_personality.
MCSymbol *getCFIPersonalitySymbol(const GlobalValue *GV, Mangler &Mang,
- const TargetMachine &TM,
MachineModuleInfo *MMI) const LLVM_OVERRIDE;
};
diff --git a/include/llvm/IR/Mangler.h b/include/llvm/IR/Mangler.h
index c1ba5858a6..07f4feda7e 100644
--- a/include/llvm/IR/Mangler.h
+++ b/include/llvm/IR/Mangler.h
@@ -51,10 +51,9 @@ public:
/// Print the appropriate prefix and the specified global variable's name.
/// If the global variable doesn't have a name, this fills in a unique name
/// for the global.
- void getNameWithPrefix(raw_ostream &OS, const GlobalValue *GV,
- bool CannotUsePrivateLabel) const;
- void getNameWithPrefix(SmallVectorImpl<char> &OutName, const GlobalValue *GV,
- bool CannotUsePrivateLabel) const;
+ void getNameWithPrefix(raw_ostream &OS, const GlobalValue *GV) const;
+ void getNameWithPrefix(SmallVectorImpl<char> &OutName,
+ const GlobalValue *GV) const;
/// Print the appropriate prefix and the specified name as the global variable
/// name. GVName must not be empty.
diff --git a/include/llvm/Target/TargetLowering.h b/include/llvm/Target/TargetLowering.h
index 0b3428ed7a..db4dcb0d1f 100644
--- a/include/llvm/Target/TargetLowering.h
+++ b/include/llvm/Target/TargetLowering.h
@@ -48,10 +48,8 @@ namespace llvm {
class MachineFunction;
class MachineInstr;
class MachineJumpTableInfo;
- class Mangler;
class MCContext;
class MCExpr;
- class MCSymbol;
template<typename T> class SmallVectorImpl;
class DataLayout;
class TargetRegisterClass;
@@ -1345,10 +1343,6 @@ public:
return LibcallCallingConvs[Call];
}
- void getNameWithPrefix(SmallVectorImpl<char> &Name, const GlobalValue *GV,
- Mangler &Mang, bool MayAlwaysUsePrivate = false) const;
- MCSymbol *getSymbol(const GlobalValue *GV, Mangler &Mang) const;
-
private:
const TargetMachine &TM;
const DataLayout *DL;
diff --git a/include/llvm/Target/TargetLoweringObjectFile.h b/include/llvm/Target/TargetLoweringObjectFile.h
index 2d9e8d3a2d..628c010afc 100644
--- a/include/llvm/Target/TargetLoweringObjectFile.h
+++ b/include/llvm/Target/TargetLoweringObjectFile.h
@@ -71,8 +71,8 @@ public:
/// This hook allows targets to selectively decide not to emit the
/// UsedDirective for some symbols in llvm.used.
/// FIXME: REMOVE this (rdar://7071300)
- virtual bool shouldEmitUsedDirectiveFor(const GlobalValue *GV, Mangler &Mang,
- TargetMachine &TM) const {
+ virtual bool shouldEmitUsedDirectiveFor(const GlobalValue *GV,
+ Mangler &Mang) const {
return GV != 0;
}
@@ -117,22 +117,25 @@ public:
/// Return an MCExpr to use for a reference to the specified global variable
/// from exception handling information.
- virtual const MCExpr *
- getTTypeGlobalReference(const GlobalValue *GV, unsigned Encoding,
- Mangler &Mang, const TargetMachine &TM,
- MachineModuleInfo *MMI, MCStreamer &Streamer) const;
+ virtual const MCExpr *getTTypeGlobalReference(const GlobalValue *GV,
+ unsigned Encoding,
+ Mangler &Mang,
+ MachineModuleInfo *MMI,
+ MCStreamer &Streamer) const;
+
+ /// Return the MCSymbol for the specified global value. This symbol is the
+ /// main label that is the address of the global
+ MCSymbol *getSymbol(const GlobalValue *GV, Mangler &M) const;
/// Return the MCSymbol for a private symbol with global value name as its
/// base, with the specified suffix.
MCSymbol *getSymbolWithGlobalValueBase(const GlobalValue *GV,
- StringRef Suffix, Mangler &Mang,
- const TargetMachine &TM) const;
+ StringRef Suffix, Mangler &M) const;
// The symbol that gets passed to .cfi_personality.
- virtual MCSymbol *getCFIPersonalitySymbol(const GlobalValue *GV,
- Mangler &Mang,
- const TargetMachine &TM,
- MachineModuleInfo *MMI) const;
+ virtual MCSymbol *
+ getCFIPersonalitySymbol(const GlobalValue *GV, Mangler &Mang,
+ MachineModuleInfo *MMI) const;
const MCExpr *
getTTypeReference(const MCSymbolRefExpr *Sym, unsigned Encoding,
@@ -154,17 +157,10 @@ public:
virtual const MCExpr *getDebugThreadLocalSymbol(const MCSymbol *Sym) const;
virtual const MCExpr *
- getExecutableRelativeSymbol(const ConstantExpr *CE, Mangler &Mang,
- const TargetMachine &TM) const {
+ getExecutableRelativeSymbol(const ConstantExpr *CE, Mangler &Mang) const {
return 0;
}
- /// \brief True if the section is atomized using the symbols in it.
- /// This is false if the section is not atomized at all (most ELF sections) or
- /// if it is atomized based on its contents (MachO' __TEXT,__cstring for
- /// example).
- virtual bool isSectionAtomizableBySymbols(const MCSection &Section) const;
-
protected:
virtual const MCSection *
SelectSectionForGlobal(const GlobalValue *GV, SectionKind Kind,