summaryrefslogtreecommitdiff
path: root/include/llvm
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2012-03-26 06:58:25 +0000
committerCraig Topper <craig.topper@gmail.com>2012-03-26 06:58:25 +0000
commitf1d0f7781e766df878bec4e7977fa3204374f394 (patch)
tree779d5caf3fef536e7044d045961fc1df6cd34666 /include/llvm
parent7e1e18fa1eaac4019deeb0f0e9de93541c29a7a4 (diff)
downloadllvm-f1d0f7781e766df878bec4e7977fa3204374f394.tar.gz
llvm-f1d0f7781e766df878bec4e7977fa3204374f394.tar.bz2
llvm-f1d0f7781e766df878bec4e7977fa3204374f394.tar.xz
Prune some includes and forward declarations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153429 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm')
-rw-r--r--include/llvm/Assembly/AssemblyAnnotationWriter.h1
-rw-r--r--include/llvm/Assembly/Parser.h1
-rw-r--r--include/llvm/Assembly/Writer.h1
-rw-r--r--include/llvm/InlineAsm.h1
-rw-r--r--include/llvm/Linker.h3
-rw-r--r--include/llvm/MC/MCAsmBackend.h5
-rw-r--r--include/llvm/MC/MCAssembler.h1
-rw-r--r--include/llvm/MC/MCCodeEmitter.h6
-rw-r--r--include/llvm/MC/MCContext.h2
-rw-r--r--include/llvm/MC/MCDwarf.h6
-rw-r--r--include/llvm/MC/MCELFObjectWriter.h9
-rw-r--r--include/llvm/MC/MCExpr.h1
-rw-r--r--include/llvm/MC/MCObjectFileInfo.h5
-rw-r--r--include/llvm/MC/MCObjectWriter.h3
-rw-r--r--include/llvm/MC/MCSection.h2
-rw-r--r--include/llvm/MC/MCSectionCOFF.h2
-rw-r--r--include/llvm/MC/MCSectionELF.h1
-rw-r--r--include/llvm/MC/MCSectionMachO.h1
-rw-r--r--include/llvm/MC/MCStreamer.h2
-rw-r--r--include/llvm/Value.h4
20 files changed, 21 insertions, 36 deletions
diff --git a/include/llvm/Assembly/AssemblyAnnotationWriter.h b/include/llvm/Assembly/AssemblyAnnotationWriter.h
index fa8cdde2fc..37b47c31e8 100644
--- a/include/llvm/Assembly/AssemblyAnnotationWriter.h
+++ b/include/llvm/Assembly/AssemblyAnnotationWriter.h
@@ -23,7 +23,6 @@ class Function;
class BasicBlock;
class Instruction;
class Value;
-class raw_ostream;
class formatted_raw_ostream;
class AssemblyAnnotationWriter {
diff --git a/include/llvm/Assembly/Parser.h b/include/llvm/Assembly/Parser.h
index 82ec6d8136..b971c531ae 100644
--- a/include/llvm/Assembly/Parser.h
+++ b/include/llvm/Assembly/Parser.h
@@ -21,7 +21,6 @@ namespace llvm {
class Module;
class MemoryBuffer;
class SMDiagnostic;
-class raw_ostream;
class LLVMContext;
/// This function is the main interface to the LLVM Assembly Parser. It parses
diff --git a/include/llvm/Assembly/Writer.h b/include/llvm/Assembly/Writer.h
index 8d8befd472..6b89ae022d 100644
--- a/include/llvm/Assembly/Writer.h
+++ b/include/llvm/Assembly/Writer.h
@@ -19,7 +19,6 @@
namespace llvm {
-class Type;
class Module;
class Value;
class raw_ostream;
diff --git a/include/llvm/InlineAsm.h b/include/llvm/InlineAsm.h
index de5ce4ecaf..37aa18bfff 100644
--- a/include/llvm/InlineAsm.h
+++ b/include/llvm/InlineAsm.h
@@ -17,6 +17,7 @@
#define LLVM_INLINEASM_H
#include "llvm/Value.h"
+#include "llvm/ADT/StringRef.h"
#include <vector>
namespace llvm {
diff --git a/include/llvm/Linker.h b/include/llvm/Linker.h
index 88908fbd72..1ebcd6b538 100644
--- a/include/llvm/Linker.h
+++ b/include/llvm/Linker.h
@@ -15,14 +15,15 @@
#define LLVM_LINKER_H
#include <memory>
+#include <string>
#include <vector>
-#include "llvm/ADT/StringRef.h"
namespace llvm {
namespace sys { class Path; }
class Module;
class LLVMContext;
+class StringRef;
/// This class provides the core functionality of linking in LLVM. It retains a
/// Module object which is the composite of the modules and libraries linked
diff --git a/include/llvm/MC/MCAsmBackend.h b/include/llvm/MC/MCAsmBackend.h
index 641ded5ef0..05e6286b7c 100644
--- a/include/llvm/MC/MCAsmBackend.h
+++ b/include/llvm/MC/MCAsmBackend.h
@@ -12,7 +12,6 @@
#include "llvm/MC/MCDirectives.h"
#include "llvm/MC/MCFixup.h"
-#include "llvm/MC/MCFixupKindInfo.h"
#include "llvm/Support/DataTypes.h"
#include "llvm/Support/ErrorHandling.h"
@@ -20,15 +19,13 @@ namespace llvm {
class MCAsmLayout;
class MCAssembler;
class MCELFObjectTargetWriter;
-class MCFixup;
+struct MCFixupKindInfo;
class MCFragment;
class MCInst;
class MCInstFragment;
class MCObjectWriter;
class MCSection;
class MCValue;
-template<typename T>
-class SmallVectorImpl;
class raw_ostream;
/// MCAsmBackend - Generic interface to target specific assembler backends.
diff --git a/include/llvm/MC/MCAssembler.h b/include/llvm/MC/MCAssembler.h
index 2566241d11..d139173c3e 100644
--- a/include/llvm/MC/MCAssembler.h
+++ b/include/llvm/MC/MCAssembler.h
@@ -25,7 +25,6 @@ namespace llvm {
class raw_ostream;
class MCAsmLayout;
class MCAssembler;
-class MCBinaryExpr;
class MCContext;
class MCCodeEmitter;
class MCExpr;
diff --git a/include/llvm/MC/MCCodeEmitter.h b/include/llvm/MC/MCCodeEmitter.h
index bc63241bec..934ef69ce3 100644
--- a/include/llvm/MC/MCCodeEmitter.h
+++ b/include/llvm/MC/MCCodeEmitter.h
@@ -10,12 +10,8 @@
#ifndef LLVM_MC_MCCODEEMITTER_H
#define LLVM_MC_MCCODEEMITTER_H
-#include "llvm/MC/MCFixup.h"
-
-#include <cassert>
-
namespace llvm {
-class MCExpr;
+class MCFixup;
class MCInst;
class raw_ostream;
template<typename T> class SmallVectorImpl;
diff --git a/include/llvm/MC/MCContext.h b/include/llvm/MC/MCContext.h
index 8b4e296bac..b586319193 100644
--- a/include/llvm/MC/MCContext.h
+++ b/include/llvm/MC/MCContext.h
@@ -16,7 +16,6 @@
#include "llvm/ADT/StringMap.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/Compiler.h"
-#include "llvm/Support/SMLoc.h"
#include "llvm/Support/raw_ostream.h"
#include <vector> // FIXME: Shouldn't be needed.
@@ -31,6 +30,7 @@ namespace llvm {
class MCObjectFileInfo;
class MCRegisterInfo;
class MCLineSection;
+ class SMLoc;
class StringRef;
class Twine;
class MCSectionMachO;
diff --git a/include/llvm/MC/MCDwarf.h b/include/llvm/MC/MCDwarf.h
index a0fc9e50cb..fdb7ab23c0 100644
--- a/include/llvm/MC/MCDwarf.h
+++ b/include/llvm/MC/MCDwarf.h
@@ -17,20 +17,16 @@
#include "llvm/ADT/StringRef.h"
#include "llvm/MC/MachineLocation.h"
-#include "llvm/MC/MCObjectWriter.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/Dwarf.h"
#include <vector>
namespace llvm {
class MCContext;
- class MCExpr;
+ class MCObjectWriter;
class MCSection;
- class MCSectionData;
class MCStreamer;
class MCSymbol;
- class MCObjectStreamer;
- class raw_ostream;
class SourceMgr;
class SMLoc;
diff --git a/include/llvm/MC/MCELFObjectWriter.h b/include/llvm/MC/MCELFObjectWriter.h
index 452f8bd28d..f153cb0c1a 100644
--- a/include/llvm/MC/MCELFObjectWriter.h
+++ b/include/llvm/MC/MCELFObjectWriter.h
@@ -10,12 +10,19 @@
#ifndef LLVM_MC_MCELFOBJECTWRITER_H
#define LLVM_MC_MCELFOBJECTWRITER_H
-#include "llvm/MC/MCObjectWriter.h"
+#include "llvm/ADT/Triple.h"
#include "llvm/Support/DataTypes.h"
#include "llvm/Support/ELF.h"
#include <vector>
namespace llvm {
+class MCAssembler;
+class MCFixup;
+class MCFragment;
+class MCObjectWriter;
+class MCSymbol;
+class MCValue;
+
/// @name Relocation Data
/// @{
diff --git a/include/llvm/MC/MCExpr.h b/include/llvm/MC/MCExpr.h
index 2ae1e84838..ff33641dba 100644
--- a/include/llvm/MC/MCExpr.h
+++ b/include/llvm/MC/MCExpr.h
@@ -15,7 +15,6 @@
#include "llvm/Support/DataTypes.h"
namespace llvm {
-class MCAsmInfo;
class MCAsmLayout;
class MCAssembler;
class MCContext;
diff --git a/include/llvm/MC/MCObjectFileInfo.h b/include/llvm/MC/MCObjectFileInfo.h
index 5d5801f33d..df8f9f3241 100644
--- a/include/llvm/MC/MCObjectFileInfo.h
+++ b/include/llvm/MC/MCObjectFileInfo.h
@@ -14,13 +14,12 @@
#ifndef LLVM_MC_MCBJECTFILEINFO_H
#define LLVM_MC_MCBJECTFILEINFO_H
-#include "llvm/MC/MCCodeGenInfo.h"
-#include "llvm/ADT/StringRef.h"
-#include "llvm/MC/SectionKind.h"
+#include "llvm/Support/CodeGen.h"
namespace llvm {
class MCContext;
class MCSection;
+ class StringRef;
class Triple;
class MCObjectFileInfo {
diff --git a/include/llvm/MC/MCObjectWriter.h b/include/llvm/MC/MCObjectWriter.h
index f6a566a8f7..6e44e6ceff 100644
--- a/include/llvm/MC/MCObjectWriter.h
+++ b/include/llvm/MC/MCObjectWriter.h
@@ -10,7 +10,6 @@
#ifndef LLVM_MC_MCOBJECTWRITER_H
#define LLVM_MC_MCOBJECTWRITER_H
-#include "llvm/ADT/Triple.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/DataTypes.h"
#include <cassert>
@@ -20,11 +19,9 @@ class MCAsmLayout;
class MCAssembler;
class MCFixup;
class MCFragment;
-class MCSymbol;
class MCSymbolData;
class MCSymbolRefExpr;
class MCValue;
-class raw_ostream;
/// MCObjectWriter - Defines the object file and target independent interfaces
/// used by the assembler backend to write native file format object files.
diff --git a/include/llvm/MC/MCSection.h b/include/llvm/MC/MCSection.h
index 57008177b6..7da6534b6e 100644
--- a/include/llvm/MC/MCSection.h
+++ b/include/llvm/MC/MCSection.h
@@ -14,12 +14,10 @@
#ifndef LLVM_MC_MCSECTION_H
#define LLVM_MC_MCSECTION_H
-#include "llvm/ADT/StringRef.h"
#include "llvm/MC/SectionKind.h"
#include "llvm/Support/Casting.h"
namespace llvm {
- class MCContext;
class MCAsmInfo;
class raw_ostream;
diff --git a/include/llvm/MC/MCSectionCOFF.h b/include/llvm/MC/MCSectionCOFF.h
index b154cf59d1..7eacde57f4 100644
--- a/include/llvm/MC/MCSectionCOFF.h
+++ b/include/llvm/MC/MCSectionCOFF.h
@@ -15,8 +15,8 @@
#define LLVM_MC_MCSECTIONCOFF_H
#include "llvm/MC/MCSection.h"
-
#include "llvm/Support/COFF.h"
+#include "llvm/ADT/StringRef.h"
namespace llvm {
diff --git a/include/llvm/MC/MCSectionELF.h b/include/llvm/MC/MCSectionELF.h
index c82de71282..7321ca83e8 100644
--- a/include/llvm/MC/MCSectionELF.h
+++ b/include/llvm/MC/MCSectionELF.h
@@ -16,6 +16,7 @@
#include "llvm/MC/MCSection.h"
#include "llvm/Support/ELF.h"
+#include "llvm/ADT/StringRef.h"
namespace llvm {
diff --git a/include/llvm/MC/MCSectionMachO.h b/include/llvm/MC/MCSectionMachO.h
index bdb17e9008..15eb4f4a76 100644
--- a/include/llvm/MC/MCSectionMachO.h
+++ b/include/llvm/MC/MCSectionMachO.h
@@ -15,6 +15,7 @@
#define LLVM_MC_MCSECTIONMACHO_H
#include "llvm/MC/MCSection.h"
+#include "llvm/ADT/StringRef.h"
namespace llvm {
diff --git a/include/llvm/MC/MCStreamer.h b/include/llvm/MC/MCStreamer.h
index 99323067c4..25956008e0 100644
--- a/include/llvm/MC/MCStreamer.h
+++ b/include/llvm/MC/MCStreamer.h
@@ -23,7 +23,6 @@
namespace llvm {
class MCAsmBackend;
- class MCAsmInfo;
class MCCodeEmitter;
class MCContext;
class MCExpr;
@@ -32,7 +31,6 @@ namespace llvm {
class MCSection;
class MCSymbol;
class StringRef;
- class TargetLoweringObjectFile;
class Twine;
class raw_ostream;
class formatted_raw_ostream;
diff --git a/include/llvm/Value.h b/include/llvm/Value.h
index 380af0b60a..84ed037ae7 100644
--- a/include/llvm/Value.h
+++ b/include/llvm/Value.h
@@ -15,7 +15,6 @@
#define LLVM_VALUE_H
#include "llvm/Use.h"
-#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Casting.h"
namespace llvm {
@@ -31,8 +30,6 @@ class GlobalAlias;
class InlineAsm;
class ValueSymbolTable;
template<typename ValueTy> class StringMapEntry;
-template <typename ValueTy = Value>
-class AssertingVH;
typedef StringMapEntry<Value*> ValueName;
class raw_ostream;
class AssemblyAnnotationWriter;
@@ -41,6 +38,7 @@ class LLVMContext;
class Twine;
class MDNode;
class Type;
+class StringRef;
//===----------------------------------------------------------------------===//
// Value Class