From cebae36f57456fe6b0e13726acd1e0250654f02d Mon Sep 17 00:00:00 2001 From: Bill Wendling Date: Wed, 10 Mar 2010 22:34:10 +0000 Subject: Add a bit along with the MCSymbols stored in the MachineModuleInfo maps that indicates that an MCSymbol is external or not. (It's true if it's external.) This will be used to specify the correct information to add to non-lazy pointers. That will be explained further when this bit is used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98199 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineModuleInfo.h | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) (limited to 'include/llvm/CodeGen/MachineModuleInfo.h') diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h index fff8e83354..1453c1e231 100644 --- a/include/llvm/CodeGen/MachineModuleInfo.h +++ b/include/llvm/CodeGen/MachineModuleInfo.h @@ -31,48 +31,46 @@ #ifndef LLVM_CODEGEN_MACHINEMODULEINFO_H #define LLVM_CODEGEN_MACHINEMODULEINFO_H -#include "llvm/Support/Dwarf.h" -#include "llvm/System/DataTypes.h" -#include "llvm/ADT/SmallVector.h" +#include "llvm/GlobalValue.h" +#include "llvm/Pass.h" +#include "llvm/Metadata.h" #include "llvm/ADT/DenseMap.h" -#include "llvm/ADT/UniqueVector.h" +#include "llvm/ADT/PointerIntPair.h" #include "llvm/ADT/SmallPtrSet.h" #include "llvm/ADT/SmallSet.h" +#include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringMap.h" +#include "llvm/ADT/UniqueVector.h" #include "llvm/CodeGen/MachineLocation.h" -#include "llvm/GlobalValue.h" -#include "llvm/Pass.h" -#include "llvm/Metadata.h" +#include "llvm/Support/Dwarf.h" #include "llvm/Support/ValueHandle.h" +#include "llvm/System/DataTypes.h" namespace llvm { //===----------------------------------------------------------------------===// // Forward declarations. class Constant; +class GlobalVariable; class MCSymbol; class MDNode; -class GlobalVariable; class MachineBasicBlock; class MachineFunction; class Module; class PointerType; class StructType; - /// MachineModuleInfoImpl - This class can be derived from and used by targets /// to hold private target-specific information for each Module. Objects of /// type are accessed/created with MMI::getInfo and destroyed when the /// MachineModuleInfo is destroyed. class MachineModuleInfoImpl { public: + typedef PointerIntPair StubValueTy; virtual ~MachineModuleInfoImpl(); - - typedef std::vector > - SymbolListTy; + typedef std::vector > SymbolListTy; protected: - static SymbolListTy - GetSortedStubs(const DenseMap &Map); + static SymbolListTy GetSortedStubs(const DenseMap&); }; -- cgit v1.2.3-18-g5258