Revert "Give internal classes hidden visibility."

It works with clang, but GCC has different rules so we can't make all of those
hidden. This reverts commit r190534.

llvm-svn: 190536
This commit is contained in:
Benjamin Kramer 2013-09-11 18:05:11 +00:00
parent 9aeba4963a
commit 079b96e6f7
35 changed files with 82 additions and 83 deletions

View File

@ -26,7 +26,7 @@ namespace llvm {
class SMDiagnostic; class SMDiagnostic;
class LLVMContext; class LLVMContext;
class LLVM_LIBRARY_VISIBILITY LLLexer { class LLLexer {
const char *CurPtr; const char *CurPtr;
MemoryBuffer *CurBuf; MemoryBuffer *CurBuf;
SMDiagnostic &ErrorInfo; SMDiagnostic &ErrorInfo;

View File

@ -42,7 +42,7 @@ namespace llvm {
/// There are several cases where we have to parse the value but where the /// There are several cases where we have to parse the value but where the
/// type can depend on later context. This may either be a numeric reference /// type can depend on later context. This may either be a numeric reference
/// or a symbolic (%var) reference. This is just a discriminated union. /// or a symbolic (%var) reference. This is just a discriminated union.
struct LLVM_LIBRARY_VISIBILITY ValID { struct ValID {
enum { enum {
t_LocalID, t_GlobalID, // ID in UIntVal. t_LocalID, t_GlobalID, // ID in UIntVal.
t_LocalName, t_GlobalName, // Name in StrVal. t_LocalName, t_GlobalName, // Name in StrVal.
@ -83,7 +83,7 @@ namespace llvm {
} }
}; };
class LLVM_LIBRARY_VISIBILITY LLParser { class LLParser {
public: public:
typedef LLLexer::LocTy LocTy; typedef LLLexer::LocTy LocTy;
private: private:

View File

@ -32,7 +32,7 @@ namespace llvm {
// BitcodeReaderValueList Class // BitcodeReaderValueList Class
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
class LLVM_LIBRARY_VISIBILITY BitcodeReaderValueList { class BitcodeReaderValueList {
std::vector<WeakVH> ValuePtrs; std::vector<WeakVH> ValuePtrs;
/// ResolveConstants - As we resolve forward-referenced constants, we add /// ResolveConstants - As we resolve forward-referenced constants, we add
@ -91,7 +91,7 @@ public:
// BitcodeReaderMDValueList Class // BitcodeReaderMDValueList Class
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
class LLVM_LIBRARY_VISIBILITY BitcodeReaderMDValueList { class BitcodeReaderMDValueList {
std::vector<WeakVH> MDValuePtrs; std::vector<WeakVH> MDValuePtrs;
LLVMContext &Context; LLVMContext &Context;
@ -121,7 +121,7 @@ public:
void AssignValue(Value *V, unsigned Idx); void AssignValue(Value *V, unsigned Idx);
}; };
class LLVM_LIBRARY_VISIBILITY BitcodeReader : public GVMaterializer { class BitcodeReader : public GVMaterializer {
LLVMContext &Context; LLVMContext &Context;
Module *TheModule; Module *TheModule;
MemoryBuffer *Buffer; MemoryBuffer *Buffer;

View File

@ -34,7 +34,7 @@ class ValueSymbolTable;
class MDSymbolTable; class MDSymbolTable;
class raw_ostream; class raw_ostream;
class LLVM_LIBRARY_VISIBILITY ValueEnumerator { class ValueEnumerator {
public: public:
typedef std::vector<Type*> TypeList; typedef std::vector<Type*> TypeList;

View File

@ -34,7 +34,7 @@ class RegisterClassInfo;
/// Class AggressiveAntiDepState /// Class AggressiveAntiDepState
/// Contains all the state necessary for anti-dep breaking. /// Contains all the state necessary for anti-dep breaking.
class LLVM_LIBRARY_VISIBILITY AggressiveAntiDepState { class AggressiveAntiDepState {
public: public:
/// RegisterReference - Information about a register reference /// RegisterReference - Information about a register reference
/// within a liverange /// within a liverange
@ -114,8 +114,7 @@ class RegisterClassInfo;
/// Class AggressiveAntiDepBreaker /// Class AggressiveAntiDepBreaker
class LLVM_LIBRARY_VISIBILITY AggressiveAntiDepBreaker class AggressiveAntiDepBreaker : public AntiDepBreaker {
: public AntiDepBreaker {
MachineFunction& MF; MachineFunction& MF;
MachineRegisterInfo &MRI; MachineRegisterInfo &MRI;
const TargetInstrInfo *TII; const TargetInstrInfo *TII;

View File

@ -25,7 +25,7 @@ namespace llvm {
class RegisterClassInfo; class RegisterClassInfo;
class VirtRegMap; class VirtRegMap;
class LLVM_LIBRARY_VISIBILITY AllocationOrder { class AllocationOrder {
SmallVector<MCPhysReg, 16> Hints; SmallVector<MCPhysReg, 16> Hints;
ArrayRef<MCPhysReg> Order; ArrayRef<MCPhysReg> Order;
int Pos; int Pos;

View File

@ -28,7 +28,7 @@ namespace llvm {
/// AntiDepBreaker - This class works into conjunction with the /// AntiDepBreaker - This class works into conjunction with the
/// post-RA scheduler to rename registers to break register /// post-RA scheduler to rename registers to break register
/// anti-dependencies. /// anti-dependencies.
class LLVM_LIBRARY_VISIBILITY AntiDepBreaker { class AntiDepBreaker {
public: public:
typedef std::vector<std::pair<MachineInstr *, MachineInstr *> > typedef std::vector<std::pair<MachineInstr *, MachineInstr *> >
DbgValueVector; DbgValueVector;

View File

@ -30,7 +30,7 @@ namespace llvm {
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
/// DIEAbbrevData - Dwarf abbreviation data, describes one attribute of a /// DIEAbbrevData - Dwarf abbreviation data, describes one attribute of a
/// Dwarf abbreviation. /// Dwarf abbreviation.
class LLVM_LIBRARY_VISIBILITY DIEAbbrevData { class DIEAbbrevData {
/// Attribute - Dwarf attribute code. /// Attribute - Dwarf attribute code.
/// ///
uint16_t Attribute; uint16_t Attribute;
@ -53,7 +53,7 @@ namespace llvm {
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
/// DIEAbbrev - Dwarf abbreviation, describes the organization of a debug /// DIEAbbrev - Dwarf abbreviation, describes the organization of a debug
/// information object. /// information object.
class LLVM_LIBRARY_VISIBILITY DIEAbbrev : public FoldingSetNode { class DIEAbbrev : public FoldingSetNode {
/// Tag - Dwarf tag code. /// Tag - Dwarf tag code.
/// ///
uint16_t Tag; uint16_t Tag;
@ -107,7 +107,7 @@ namespace llvm {
/// describes its organization. /// describes its organization.
class DIEValue; class DIEValue;
class LLVM_LIBRARY_VISIBILITY DIE { class DIE {
protected: protected:
/// Offset - Offset in debug info section. /// Offset - Offset in debug info section.
/// ///
@ -188,7 +188,7 @@ namespace llvm {
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
/// DIEValue - A debug information entry value. /// DIEValue - A debug information entry value.
/// ///
class LLVM_LIBRARY_VISIBILITY DIEValue { class DIEValue {
virtual void anchor(); virtual void anchor();
public: public:
enum { enum {
@ -228,7 +228,7 @@ namespace llvm {
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
/// DIEInteger - An integer value DIE. /// DIEInteger - An integer value DIE.
/// ///
class LLVM_LIBRARY_VISIBILITY DIEInteger : public DIEValue { class DIEInteger : public DIEValue {
uint64_t Integer; uint64_t Integer;
public: public:
explicit DIEInteger(uint64_t I) : DIEValue(isInteger), Integer(I) {} explicit DIEInteger(uint64_t I) : DIEValue(isInteger), Integer(I) {}
@ -270,7 +270,7 @@ namespace llvm {
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
/// DIEExpr - An expression DIE. /// DIEExpr - An expression DIE.
// //
class LLVM_LIBRARY_VISIBILITY DIEExpr : public DIEValue { class DIEExpr : public DIEValue {
const MCExpr *Expr; const MCExpr *Expr;
public: public:
explicit DIEExpr(const MCExpr *E) : DIEValue(isExpr), Expr(E) {} explicit DIEExpr(const MCExpr *E) : DIEValue(isExpr), Expr(E) {}
@ -298,7 +298,7 @@ namespace llvm {
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
/// DIELabel - A label DIE. /// DIELabel - A label DIE.
// //
class LLVM_LIBRARY_VISIBILITY DIELabel : public DIEValue { class DIELabel : public DIEValue {
const MCSymbol *Label; const MCSymbol *Label;
public: public:
explicit DIELabel(const MCSymbol *L) : DIEValue(isLabel), Label(L) {} explicit DIELabel(const MCSymbol *L) : DIEValue(isLabel), Label(L) {}
@ -326,7 +326,7 @@ namespace llvm {
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
/// DIEDelta - A simple label difference DIE. /// DIEDelta - A simple label difference DIE.
/// ///
class LLVM_LIBRARY_VISIBILITY DIEDelta : public DIEValue { class DIEDelta : public DIEValue {
const MCSymbol *LabelHi; const MCSymbol *LabelHi;
const MCSymbol *LabelLo; const MCSymbol *LabelLo;
public: public:
@ -352,7 +352,7 @@ namespace llvm {
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
/// DIEString - A container for string values. /// DIEString - A container for string values.
/// ///
class LLVM_LIBRARY_VISIBILITY DIEString : public DIEValue { class DIEString : public DIEValue {
const DIEValue *Access; const DIEValue *Access;
const StringRef Str; const StringRef Str;
@ -383,7 +383,7 @@ namespace llvm {
/// DIEEntry - A pointer to another debug information entry. An instance of /// DIEEntry - A pointer to another debug information entry. An instance of
/// this class can also be used as a proxy for a debug information entry not /// this class can also be used as a proxy for a debug information entry not
/// yet defined (ie. types.) /// yet defined (ie. types.)
class LLVM_LIBRARY_VISIBILITY DIEEntry : public DIEValue { class DIEEntry : public DIEValue {
DIE *const Entry; DIE *const Entry;
public: public:
explicit DIEEntry(DIE *E) : DIEValue(isEntry), Entry(E) { explicit DIEEntry(DIE *E) : DIEValue(isEntry), Entry(E) {
@ -417,7 +417,7 @@ namespace llvm {
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
/// DIEBlock - A block of values. Primarily used for location expressions. /// DIEBlock - A block of values. Primarily used for location expressions.
// //
class LLVM_LIBRARY_VISIBILITY DIEBlock : public DIEValue, public DIE { class DIEBlock : public DIEValue, public DIE {
unsigned Size; // Size in bytes excluding size header. unsigned Size; // Size in bytes excluding size header.
public: public:
DIEBlock() DIEBlock()

View File

@ -19,7 +19,7 @@ class CompileUnit;
/// \brief An object containing the capability of hashing and adding hash /// \brief An object containing the capability of hashing and adding hash
/// attributes onto a DIE. /// attributes onto a DIE.
class LLVM_LIBRARY_VISIBILITY DIEHash { class DIEHash {
// The entry for a particular attribute. // The entry for a particular attribute.
struct AttrEntry { struct AttrEntry {
const DIEValue *Val; const DIEValue *Val;

View File

@ -65,7 +65,7 @@ class AsmPrinter;
class DIE; class DIE;
class DwarfUnits; class DwarfUnits;
class LLVM_LIBRARY_VISIBILITY DwarfAccelTable { class DwarfAccelTable {
static uint32_t HashDJB(StringRef Str) { static uint32_t HashDJB(StringRef Str) {
uint32_t h = 5381; uint32_t h = 5381;

View File

@ -34,7 +34,7 @@ class DbgVariable;
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
/// CompileUnit - This dwarf writer support class manages information associated /// CompileUnit - This dwarf writer support class manages information associated
/// with a source file. /// with a source file.
class LLVM_LIBRARY_VISIBILITY CompileUnit { class CompileUnit {
/// UniqueID - a numeric ID unique among all CUs in the module /// UniqueID - a numeric ID unique among all CUs in the module
/// ///
unsigned UniqueID; unsigned UniqueID;

View File

@ -44,7 +44,7 @@ class DIEEntry;
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
/// \brief This class is used to record source line correspondence. /// \brief This class is used to record source line correspondence.
class LLVM_LIBRARY_VISIBILITY SrcLineInfo { class SrcLineInfo {
unsigned Line; // Source line number. unsigned Line; // Source line number.
unsigned Column; // Source column. unsigned Column; // Source column.
unsigned SourceID; // Source ID number. unsigned SourceID; // Source ID number.
@ -62,7 +62,7 @@ public:
/// \brief This struct describes location entries emitted in the .debug_loc /// \brief This struct describes location entries emitted in the .debug_loc
/// section. /// section.
class LLVM_LIBRARY_VISIBILITY DotDebugLocEntry { class DotDebugLocEntry {
// Begin and end symbols for the address range that this location is valid. // Begin and end symbols for the address range that this location is valid.
const MCSymbol *Begin; const MCSymbol *Begin;
const MCSymbol *End; const MCSymbol *End;
@ -143,7 +143,7 @@ public:
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
/// \brief This class is used to track local variable information. /// \brief This class is used to track local variable information.
class LLVM_LIBRARY_VISIBILITY DbgVariable { class DbgVariable {
DIVariable Var; // Variable Descriptor. DIVariable Var; // Variable Descriptor.
DIE *TheDIE; // Variable DIE. DIE *TheDIE; // Variable DIE.
unsigned DotDebugLocOffset; // Offset in DotDebugLocEntries. unsigned DotDebugLocOffset; // Offset in DotDebugLocEntries.
@ -212,7 +212,7 @@ public:
/// \brief Collects and handles information specific to a particular /// \brief Collects and handles information specific to a particular
/// collection of units. /// collection of units.
class LLVM_LIBRARY_VISIBILITY DwarfUnits { class DwarfUnits {
// Target of Dwarf emission, used for sizing of abbreviations. // Target of Dwarf emission, used for sizing of abbreviations.
AsmPrinter *Asm; AsmPrinter *Asm;
@ -301,7 +301,7 @@ public:
}; };
/// \brief Collects and handles dwarf debug information. /// \brief Collects and handles dwarf debug information.
class LLVM_LIBRARY_VISIBILITY DwarfDebug { class DwarfDebug {
// Target of Dwarf emission. // Target of Dwarf emission.
AsmPrinter *Asm; AsmPrinter *Asm;

View File

@ -34,7 +34,7 @@ class AsmPrinter;
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
/// DwarfException - Emits Dwarf exception handling directives. /// DwarfException - Emits Dwarf exception handling directives.
/// ///
class LLVM_LIBRARY_VISIBILITY DwarfException { class DwarfException {
protected: protected:
/// Asm - Target of Dwarf emission. /// Asm - Target of Dwarf emission.
AsmPrinter *Asm; AsmPrinter *Asm;
@ -141,7 +141,7 @@ public:
virtual void EndFunction(); virtual void EndFunction();
}; };
class LLVM_LIBRARY_VISIBILITY DwarfCFIException : public DwarfException { class DwarfCFIException : public DwarfException {
/// shouldEmitPersonality - Per-function flag to indicate if .cfi_personality /// shouldEmitPersonality - Per-function flag to indicate if .cfi_personality
/// should be emitted. /// should be emitted.
bool shouldEmitPersonality; bool shouldEmitPersonality;
@ -175,7 +175,7 @@ public:
virtual void EndFunction(); virtual void EndFunction();
}; };
class LLVM_LIBRARY_VISIBILITY ARMException : public DwarfException { class ARMException : public DwarfException {
void EmitTypeInfos(unsigned TTypeEncoding); void EmitTypeInfos(unsigned TTypeEncoding);
public: public:
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
@ -196,7 +196,7 @@ public:
virtual void EndFunction(); virtual void EndFunction();
}; };
class LLVM_LIBRARY_VISIBILITY Win64Exception : public DwarfException { class Win64Exception : public DwarfException {
/// shouldEmitPersonality - Per-function flag to indicate if personality /// shouldEmitPersonality - Per-function flag to indicate if personality
/// info should be emitted. /// info should be emitted.
bool shouldEmitPersonality; bool shouldEmitPersonality;

View File

@ -21,7 +21,7 @@ namespace llvm {
class TargetInstrInfo; class TargetInstrInfo;
class TargetRegisterInfo; class TargetRegisterInfo;
class LLVM_LIBRARY_VISIBILITY BranchFolder { class BranchFolder {
public: public:
explicit BranchFolder(bool defaultEnableTailMerge, bool CommonHoist); explicit BranchFolder(bool defaultEnableTailMerge, bool CommonHoist);

View File

@ -31,7 +31,7 @@ class RegisterClassInfo;
class TargetInstrInfo; class TargetInstrInfo;
class TargetRegisterInfo; class TargetRegisterInfo;
class LLVM_LIBRARY_VISIBILITY CriticalAntiDepBreaker : public AntiDepBreaker { class CriticalAntiDepBreaker : public AntiDepBreaker {
MachineFunction& MF; MachineFunction& MF;
MachineRegisterInfo &MRI; MachineRegisterInfo &MRI;
const TargetInstrInfo *TII; const TargetInstrInfo *TII;

View File

@ -21,7 +21,7 @@ namespace llvm {
class LiveIntervals; class LiveIntervals;
class LLVM_LIBRARY_VISIBILITY InterferenceCache { class InterferenceCache {
const TargetRegisterInfo *TRI; const TargetRegisterInfo *TRI;
LiveIntervalUnion *LIUArray; LiveIntervalUnion *LIUArray;
MachineFunction *MF; MachineFunction *MF;

View File

@ -30,7 +30,7 @@ class LiveInterval;
class LiveIntervals; class LiveIntervals;
class VirtRegMap; class VirtRegMap;
class LLVM_LIBRARY_VISIBILITY LiveDebugVariables : public MachineFunctionPass { class LiveDebugVariables : public MachineFunctionPass {
void *pImpl; void *pImpl;
public: public:
static char ID; // Pass identification, replacement for typeid static char ID; // Pass identification, replacement for typeid

View File

@ -33,7 +33,7 @@ class MachineDominatorTree;
template <class NodeT> class DomTreeNodeBase; template <class NodeT> class DomTreeNodeBase;
typedef DomTreeNodeBase<MachineBasicBlock> MachineDomTreeNode; typedef DomTreeNodeBase<MachineBasicBlock> MachineDomTreeNode;
class LLVM_LIBRARY_VISIBILITY LiveRangeCalc { class LiveRangeCalc {
const MachineFunction *MF; const MachineFunction *MF;
const MachineRegisterInfo *MRI; const MachineRegisterInfo *MRI;
SlotIndexes *Indexes; SlotIndexes *Indexes;

View File

@ -33,7 +33,7 @@ namespace llvm {
class RegScavenger; class RegScavenger;
class MachineBasicBlock; class MachineBasicBlock;
class LLVM_LIBRARY_VISIBILITY PEI : public MachineFunctionPass { class PEI : public MachineFunctionPass {
public: public:
static char ID; static char ID;
PEI() : MachineFunctionPass(ID) { PEI() : MachineFunctionPass(ID) {

View File

@ -56,7 +56,7 @@ class Spiller;
/// Register allocators must override the selectOrSplit() method to implement /// Register allocators must override the selectOrSplit() method to implement
/// live range splitting. They must also override enqueue/dequeue to provide an /// live range splitting. They must also override enqueue/dequeue to provide an
/// assignment order. /// assignment order.
class LLVM_LIBRARY_VISIBILITY RegAllocBase { class RegAllocBase {
protected: protected:
const TargetRegisterInfo *TRI; const TargetRegisterInfo *TRI;
MachineRegisterInfo *MRI; MachineRegisterInfo *MRI;

View File

@ -26,7 +26,7 @@ class MachineInstrBuilder;
class MCInstrDesc; class MCInstrDesc;
class SDDbgValue; class SDDbgValue;
class LLVM_LIBRARY_VISIBILITY InstrEmitter { class InstrEmitter {
MachineFunction *MF; MachineFunction *MF;
MachineRegisterInfo *MRI; MachineRegisterInfo *MRI;
const TargetMachine *TM; const TargetMachine *TM;

View File

@ -27,7 +27,7 @@ class Value;
/// SDDbgValue - Holds the information from a dbg_value node through SDISel. /// SDDbgValue - Holds the information from a dbg_value node through SDISel.
/// We do not use SDValue here to avoid including its header. /// We do not use SDValue here to avoid including its header.
class LLVM_LIBRARY_VISIBILITY SDDbgValue { class SDDbgValue {
public: public:
enum DbgValueKind { enum DbgValueKind {
SDNODE = 0, // value is the result of an expression SDNODE = 0, // value is the result of an expression

View File

@ -33,7 +33,7 @@ namespace llvm {
/// edges. Physical register dependence information is not carried in /// edges. Physical register dependence information is not carried in
/// the DAG and must be handled explicitly by schedulers. /// the DAG and must be handled explicitly by schedulers.
/// ///
class LLVM_LIBRARY_VISIBILITY ScheduleDAGSDNodes : public ScheduleDAG { class ScheduleDAGSDNodes : public ScheduleDAG {
public: public:
MachineBasicBlock *BB; MachineBasicBlock *BB;
SelectionDAG *DAG; // DAG of the current basic block SelectionDAG *DAG; // DAG of the current basic block

View File

@ -79,7 +79,7 @@ class ZExtInst;
/// SelectionDAGBuilder - This is the common target-independent lowering /// SelectionDAGBuilder - This is the common target-independent lowering
/// implementation that is parameterized by a TargetLowering object. /// implementation that is parameterized by a TargetLowering object.
/// ///
class LLVM_LIBRARY_VISIBILITY SelectionDAGBuilder { class SelectionDAGBuilder {
/// CurInst - The current instruction being visited /// CurInst - The current instruction being visited
const Instruction *CurInst; const Instruction *CurInst;

View File

@ -39,7 +39,7 @@ class EdgeBundles;
class MachineBasicBlock; class MachineBasicBlock;
class MachineLoopInfo; class MachineLoopInfo;
class LLVM_LIBRARY_VISIBILITY SpillPlacement : public MachineFunctionPass { class SpillPlacement : public MachineFunctionPass {
struct Node; struct Node;
const MachineFunction *MF; const MachineFunction *MF;
const EdgeBundles *bundles; const EdgeBundles *bundles;

View File

@ -39,7 +39,7 @@ class raw_ostream;
/// SplitAnalysis - Analyze a LiveInterval, looking for live range splitting /// SplitAnalysis - Analyze a LiveInterval, looking for live range splitting
/// opportunities. /// opportunities.
class LLVM_LIBRARY_VISIBILITY SplitAnalysis { class SplitAnalysis {
public: public:
const MachineFunction &MF; const MachineFunction &MF;
const VirtRegMap &VRM; const VirtRegMap &VRM;
@ -208,7 +208,7 @@ public:
/// - Finish the current interval with closeIntv and repeat from 2. /// - Finish the current interval with closeIntv and repeat from 2.
/// - Rewrite instructions with finish(). /// - Rewrite instructions with finish().
/// ///
class LLVM_LIBRARY_VISIBILITY SplitEditor { class SplitEditor {
SplitAnalysis &SA; SplitAnalysis &SA;
LiveIntervals &LIS; LiveIntervals &LIS;
VirtRegMap &VRM; VirtRegMap &VRM;

View File

@ -39,7 +39,7 @@ SlotTracker *createSlotTracker(const Module *M);
// TypePrinting Class: Type printing machinery // TypePrinting Class: Type printing machinery
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
class LLVM_LIBRARY_VISIBILITY TypePrinting { class TypePrinting {
TypePrinting(const TypePrinting &) LLVM_DELETED_FUNCTION; TypePrinting(const TypePrinting &) LLVM_DELETED_FUNCTION;
void operator=(const TypePrinting&) LLVM_DELETED_FUNCTION; void operator=(const TypePrinting&) LLVM_DELETED_FUNCTION;
public: public:
@ -61,7 +61,7 @@ public:
void printStructBody(StructType *Ty, raw_ostream &OS); void printStructBody(StructType *Ty, raw_ostream &OS);
}; };
class LLVM_LIBRARY_VISIBILITY AssemblyWriter { class AssemblyWriter {
protected: protected:
formatted_raw_ostream &Out; formatted_raw_ostream &Out;
const Module *TheModule; const Module *TheModule;

View File

@ -29,7 +29,7 @@ class LLVMContext;
/// \class /// \class
/// \brief This class represents a single, uniqued attribute. That attribute /// \brief This class represents a single, uniqued attribute. That attribute
/// could be a single enum, a tuple, or a string. /// could be a single enum, a tuple, or a string.
class LLVM_LIBRARY_VISIBILITY AttributeImpl : public FoldingSetNode { class AttributeImpl : public FoldingSetNode {
unsigned char KindID; ///< Holds the AttrEntryKind of the attribute unsigned char KindID; ///< Holds the AttrEntryKind of the attribute
// AttributesImpl is uniqued, these should not be publicly available. // AttributesImpl is uniqued, these should not be publicly available.
@ -93,7 +93,7 @@ public:
/// represented by Attribute::AttrKind; alignment attribute entries; and string /// represented by Attribute::AttrKind; alignment attribute entries; and string
/// attribute enties, which are for target-dependent attributes. /// attribute enties, which are for target-dependent attributes.
class LLVM_LIBRARY_VISIBILITY EnumAttributeImpl : public AttributeImpl { class EnumAttributeImpl : public AttributeImpl {
Attribute::AttrKind Kind; Attribute::AttrKind Kind;
protected: protected:
@ -107,7 +107,7 @@ public:
Attribute::AttrKind getEnumKind() const { return Kind; } Attribute::AttrKind getEnumKind() const { return Kind; }
}; };
class LLVM_LIBRARY_VISIBILITY AlignAttributeImpl : public EnumAttributeImpl { class AlignAttributeImpl : public EnumAttributeImpl {
unsigned Align; unsigned Align;
public: public:
@ -121,7 +121,7 @@ public:
unsigned getAlignment() const { return Align; } unsigned getAlignment() const { return Align; }
}; };
class LLVM_LIBRARY_VISIBILITY StringAttributeImpl : public AttributeImpl { class StringAttributeImpl : public AttributeImpl {
std::string Kind; std::string Kind;
std::string Val; std::string Val;
@ -137,7 +137,7 @@ public:
/// \class /// \class
/// \brief This class represents a group of attributes that apply to one /// \brief This class represents a group of attributes that apply to one
/// element: function, return type, or parameter. /// element: function, return type, or parameter.
class LLVM_LIBRARY_VISIBILITY AttributeSetNode : public FoldingSetNode { class AttributeSetNode : public FoldingSetNode {
unsigned NumAttrs; ///< Number of attributes in this node. unsigned NumAttrs; ///< Number of attributes in this node.
AttributeSetNode(ArrayRef<Attribute> Attrs) : NumAttrs(Attrs.size()) { AttributeSetNode(ArrayRef<Attribute> Attrs) : NumAttrs(Attrs.size()) {
@ -180,7 +180,7 @@ public:
/// \class /// \class
/// \brief This class represents a set of attributes that apply to the function, /// \brief This class represents a set of attributes that apply to the function,
/// return type, and parameters. /// return type, and parameters.
class LLVM_LIBRARY_VISIBILITY AttributeSetImpl : public FoldingSetNode { class AttributeSetImpl : public FoldingSetNode {
friend class AttributeSet; friend class AttributeSet;
LLVMContext &Context; LLVMContext &Context;

View File

@ -31,7 +31,7 @@ struct ConstantTraits;
/// UnaryConstantExpr - This class is private to Constants.cpp, and is used /// UnaryConstantExpr - This class is private to Constants.cpp, and is used
/// behind the scenes to implement unary constant exprs. /// behind the scenes to implement unary constant exprs.
class LLVM_LIBRARY_VISIBILITY UnaryConstantExpr : public ConstantExpr { class UnaryConstantExpr : public ConstantExpr {
virtual void anchor(); virtual void anchor();
void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION; void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION;
public: public:
@ -48,7 +48,7 @@ public:
/// BinaryConstantExpr - This class is private to Constants.cpp, and is used /// BinaryConstantExpr - This class is private to Constants.cpp, and is used
/// behind the scenes to implement binary constant exprs. /// behind the scenes to implement binary constant exprs.
class LLVM_LIBRARY_VISIBILITY BinaryConstantExpr : public ConstantExpr { class BinaryConstantExpr : public ConstantExpr {
virtual void anchor(); virtual void anchor();
void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION; void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION;
public: public:
@ -69,7 +69,7 @@ public:
/// SelectConstantExpr - This class is private to Constants.cpp, and is used /// SelectConstantExpr - This class is private to Constants.cpp, and is used
/// behind the scenes to implement select constant exprs. /// behind the scenes to implement select constant exprs.
class LLVM_LIBRARY_VISIBILITY SelectConstantExpr : public ConstantExpr { class SelectConstantExpr : public ConstantExpr {
virtual void anchor(); virtual void anchor();
void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION; void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION;
public: public:
@ -90,7 +90,7 @@ public:
/// ExtractElementConstantExpr - This class is private to /// ExtractElementConstantExpr - This class is private to
/// Constants.cpp, and is used behind the scenes to implement /// Constants.cpp, and is used behind the scenes to implement
/// extractelement constant exprs. /// extractelement constant exprs.
class LLVM_LIBRARY_VISIBILITY ExtractElementConstantExpr : public ConstantExpr { class ExtractElementConstantExpr : public ConstantExpr {
virtual void anchor(); virtual void anchor();
void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION; void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION;
public: public:
@ -111,7 +111,7 @@ public:
/// InsertElementConstantExpr - This class is private to /// InsertElementConstantExpr - This class is private to
/// Constants.cpp, and is used behind the scenes to implement /// Constants.cpp, and is used behind the scenes to implement
/// insertelement constant exprs. /// insertelement constant exprs.
class LLVM_LIBRARY_VISIBILITY InsertElementConstantExpr : public ConstantExpr { class InsertElementConstantExpr : public ConstantExpr {
virtual void anchor(); virtual void anchor();
void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION; void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION;
public: public:
@ -133,7 +133,7 @@ public:
/// ShuffleVectorConstantExpr - This class is private to /// ShuffleVectorConstantExpr - This class is private to
/// Constants.cpp, and is used behind the scenes to implement /// Constants.cpp, and is used behind the scenes to implement
/// shufflevector constant exprs. /// shufflevector constant exprs.
class LLVM_LIBRARY_VISIBILITY ShuffleVectorConstantExpr : public ConstantExpr { class ShuffleVectorConstantExpr : public ConstantExpr {
virtual void anchor(); virtual void anchor();
void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION; void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION;
public: public:
@ -158,7 +158,7 @@ public:
/// ExtractValueConstantExpr - This class is private to /// ExtractValueConstantExpr - This class is private to
/// Constants.cpp, and is used behind the scenes to implement /// Constants.cpp, and is used behind the scenes to implement
/// extractvalue constant exprs. /// extractvalue constant exprs.
class LLVM_LIBRARY_VISIBILITY ExtractValueConstantExpr : public ConstantExpr { class ExtractValueConstantExpr : public ConstantExpr {
virtual void anchor(); virtual void anchor();
void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION; void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION;
public: public:
@ -184,7 +184,7 @@ public:
/// InsertValueConstantExpr - This class is private to /// InsertValueConstantExpr - This class is private to
/// Constants.cpp, and is used behind the scenes to implement /// Constants.cpp, and is used behind the scenes to implement
/// insertvalue constant exprs. /// insertvalue constant exprs.
class LLVM_LIBRARY_VISIBILITY InsertValueConstantExpr : public ConstantExpr { class InsertValueConstantExpr : public ConstantExpr {
virtual void anchor(); virtual void anchor();
void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION; void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION;
public: public:
@ -211,7 +211,7 @@ public:
/// GetElementPtrConstantExpr - This class is private to Constants.cpp, and is /// GetElementPtrConstantExpr - This class is private to Constants.cpp, and is
/// used behind the scenes to implement getelementpr constant exprs. /// used behind the scenes to implement getelementpr constant exprs.
class LLVM_LIBRARY_VISIBILITY GetElementPtrConstantExpr : public ConstantExpr { class GetElementPtrConstantExpr : public ConstantExpr {
virtual void anchor(); virtual void anchor();
GetElementPtrConstantExpr(Constant *C, ArrayRef<Constant*> IdxList, GetElementPtrConstantExpr(Constant *C, ArrayRef<Constant*> IdxList,
Type *DestTy); Type *DestTy);
@ -232,7 +232,7 @@ public:
// CompareConstantExpr - This class is private to Constants.cpp, and is used // CompareConstantExpr - This class is private to Constants.cpp, and is used
// behind the scenes to implement ICmp and FCmp constant expressions. This is // behind the scenes to implement ICmp and FCmp constant expressions. This is
// needed in order to store the predicate value for these instructions. // needed in order to store the predicate value for these instructions.
class LLVM_LIBRARY_VISIBILITY CompareConstantExpr : public ConstantExpr { class CompareConstantExpr : public ConstantExpr {
virtual void anchor(); virtual void anchor();
void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION; void *operator new(size_t, unsigned) LLVM_DELETED_FUNCTION;
public: public:
@ -313,7 +313,7 @@ struct OperandTraits<CompareConstantExpr> :
}; };
DEFINE_TRANSPARENT_OPERAND_ACCESSORS(CompareConstantExpr, Value) DEFINE_TRANSPARENT_OPERAND_ACCESSORS(CompareConstantExpr, Value)
struct LLVM_LIBRARY_VISIBILITY ExprMapKeyType { struct ExprMapKeyType {
ExprMapKeyType(unsigned opc, ExprMapKeyType(unsigned opc,
ArrayRef<Constant*> ops, ArrayRef<Constant*> ops,
unsigned short flags = 0, unsigned short flags = 0,
@ -349,7 +349,7 @@ struct LLVM_LIBRARY_VISIBILITY ExprMapKeyType {
} }
}; };
struct LLVM_LIBRARY_VISIBILITY InlineAsmKeyType { struct InlineAsmKeyType {
InlineAsmKeyType(StringRef AsmString, InlineAsmKeyType(StringRef AsmString,
StringRef Constraints, bool hasSideEffects, StringRef Constraints, bool hasSideEffects,
bool isAlignStack, InlineAsm::AsmDialect asmDialect) bool isAlignStack, InlineAsm::AsmDialect asmDialect)
@ -512,7 +512,7 @@ struct ConstantKeyData<InlineAsm> {
template<class ValType, class ValRefType, class TypeClass, class ConstantClass, template<class ValType, class ValRefType, class TypeClass, class ConstantClass,
bool HasLargeKey = false /*true for arrays and structs*/ > bool HasLargeKey = false /*true for arrays and structs*/ >
class LLVM_LIBRARY_VISIBILITY ConstantUniqueMap { class ConstantUniqueMap {
public: public:
typedef std::pair<TypeClass*, ValType> MapKey; typedef std::pair<TypeClass*, ValType> MapKey;
typedef std::map<MapKey, ConstantClass *> MapTy; typedef std::map<MapKey, ConstantClass *> MapTy;
@ -648,7 +648,7 @@ public:
// Unique map for aggregate constants // Unique map for aggregate constants
template<class TypeClass, class ConstantClass> template<class TypeClass, class ConstantClass>
class LLVM_LIBRARY_VISIBILITY ConstantAggrUniqueMap { class ConstantAggrUniqueMap {
public: public:
typedef ArrayRef<Constant*> Operands; typedef ArrayRef<Constant*> Operands;
typedef std::pair<TypeClass*, Operands> LookupKey; typedef std::pair<TypeClass*, Operands> LookupKey;

View File

@ -41,7 +41,7 @@ class LLVMContext;
class Type; class Type;
class Value; class Value;
struct LLVM_LIBRARY_VISIBILITY DenseMapAPIntKeyInfo { struct DenseMapAPIntKeyInfo {
struct KeyTy { struct KeyTy {
APInt val; APInt val;
Type* type; Type* type;
@ -66,7 +66,7 @@ struct LLVM_LIBRARY_VISIBILITY DenseMapAPIntKeyInfo {
} }
}; };
struct LLVM_LIBRARY_VISIBILITY DenseMapAPFloatKeyInfo { struct DenseMapAPFloatKeyInfo {
struct KeyTy { struct KeyTy {
APFloat val; APFloat val;
KeyTy(const APFloat& V) : val(V){} KeyTy(const APFloat& V) : val(V){}
@ -94,7 +94,7 @@ struct LLVM_LIBRARY_VISIBILITY DenseMapAPFloatKeyInfo {
} }
}; };
struct LLVM_LIBRARY_VISIBILITY AnonStructTypeKeyInfo { struct AnonStructTypeKeyInfo {
struct KeyTy { struct KeyTy {
ArrayRef<Type*> ETypes; ArrayRef<Type*> ETypes;
bool isPacked; bool isPacked;
@ -138,7 +138,7 @@ struct LLVM_LIBRARY_VISIBILITY AnonStructTypeKeyInfo {
} }
}; };
struct LLVM_LIBRARY_VISIBILITY FunctionTypeKeyInfo { struct FunctionTypeKeyInfo {
struct KeyTy { struct KeyTy {
const Type *ReturnType; const Type *ReturnType;
ArrayRef<Type*> Params; ArrayRef<Type*> Params;
@ -209,7 +209,7 @@ template<> struct FoldingSetTrait<MDNode> : DefaultFoldingSetTrait<MDNode> {
/// DebugRecVH - This is a CallbackVH used to keep the Scope -> index maps /// DebugRecVH - This is a CallbackVH used to keep the Scope -> index maps
/// up to date as MDNodes mutate. This class is implemented in DebugLoc.cpp. /// up to date as MDNodes mutate. This class is implemented in DebugLoc.cpp.
class LLVM_LIBRARY_VISIBILITY DebugRecVH : public CallbackVH { class DebugRecVH : public CallbackVH {
/// Ctx - This is the LLVM Context being referenced. /// Ctx - This is the LLVM Context being referenced.
LLVMContextImpl *Ctx; LLVMContextImpl *Ctx;
@ -230,7 +230,7 @@ public:
virtual void allUsesReplacedWith(Value *VNew); virtual void allUsesReplacedWith(Value *VNew);
}; };
class LLVM_LIBRARY_VISIBILITY LLVMContextImpl { class LLVMContextImpl {
public: public:
/// OwnedModules - The set of modules instantiated in this context, and which /// OwnedModules - The set of modules instantiated in this context, and which
/// will be automatically deleted if this context is deleted. /// will be automatically deleted if this context is deleted.

View File

@ -28,7 +28,7 @@ struct PrinterTrait<Value> {
}; };
template <typename T> template <typename T>
struct LLVM_LIBRARY_VISIBILITY LeakDetectorImpl { struct LeakDetectorImpl {
explicit LeakDetectorImpl(const char* const name = "") : explicit LeakDetectorImpl(const char* const name = "") :
Cache(0), Name(name) { } Cache(0), Name(name) { }

View File

@ -21,7 +21,7 @@
namespace llvm { namespace llvm {
class LLVM_LIBRARY_VISIBILITY DebugIR : public llvm::ModulePass { class DebugIR : public llvm::ModulePass {
/// If true, write a source file to disk. /// If true, write a source file to disk.
bool WriteSourceToDisk; bool WriteSourceToDisk;

View File

@ -29,7 +29,7 @@ namespace objcarc {
/// Declarations for ObjC runtime functions and constants. These are initialized /// Declarations for ObjC runtime functions and constants. These are initialized
/// lazily to avoid cluttering up the Module with unused declarations. /// lazily to avoid cluttering up the Module with unused declarations.
class LLVM_LIBRARY_VISIBILITY ARCRuntimeEntryPoints { class ARCRuntimeEntryPoints {
public: public:
enum EntryPointType { enum EntryPointType {
EPT_AutoreleaseRV, EPT_AutoreleaseRV,

View File

@ -35,8 +35,8 @@ namespace objcarc {
/// TODO: This class could be generalized to know about other ObjC-specific /// TODO: This class could be generalized to know about other ObjC-specific
/// tricks. Such as knowing that ivars in the non-fragile ABI are non-aliasing /// tricks. Such as knowing that ivars in the non-fragile ABI are non-aliasing
/// even though their offsets are dynamic. /// even though their offsets are dynamic.
class LLVM_LIBRARY_VISIBILITY ObjCARCAliasAnalysis : public ImmutablePass, class ObjCARCAliasAnalysis : public ImmutablePass,
public AliasAnalysis { public AliasAnalysis {
public: public:
static char ID; // Class identification, replacement for typeinfo static char ID; // Class identification, replacement for typeinfo
ObjCARCAliasAnalysis() : ImmutablePass(ID) { ObjCARCAliasAnalysis() : ImmutablePass(ID) {

View File

@ -46,7 +46,7 @@ namespace objcarc {
/// an ``independent provenance source'' of a pointer to determine whether or /// an ``independent provenance source'' of a pointer to determine whether or
/// not two pointers have the same provenance source and thus could /// not two pointers have the same provenance source and thus could
/// potentially be related. /// potentially be related.
class LLVM_LIBRARY_VISIBILITY ProvenanceAnalysis { class ProvenanceAnalysis {
AliasAnalysis *AA; AliasAnalysis *AA;
typedef std::pair<const Value *, const Value *> ValuePairTy; typedef std::pair<const Value *, const Value *> ValuePairTy;