llvm.org GIT mirror llvm / 492acdd
Remove some unneeded headers and replace some headers with forward class declarations (NFC) Differential Revision: http://reviews.llvm.org/D19154 Patch by Eugene Kosov <claprix@yandex.ru> From: Mehdi Amini <mehdi.amini@apple.com> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@266524 91177308-0d34-0410-b5e6-96231b3b80d8 Mehdi Amini 3 years ago
40 changed file(s) with 44 addition(s) and 62 deletion(s). Raw diff Collapse all Expand all
2323 struct fltSemantics;
2424 class APSInt;
2525 class StringRef;
26
27 template class SmallVectorImpl;
2628
2729 /// Enum that represents what fraction of the LSB truncated bits of an fp number
2830 /// represent.
1515 #ifndef LLVM_ADT_APINT_H
1616 #define LLVM_ADT_APINT_H
1717
18 #include "llvm/ADT/ArrayRef.h"
1918 #include "llvm/Support/Compiler.h"
2019 #include "llvm/Support/MathExtras.h"
2120 #include
3029 class raw_ostream;
3130
3231 template class SmallVectorImpl;
32 template class ArrayRef;
3333
3434 // An unsigned host type used as a single part of a multi-part
3535 // bignum.
1616 #define LLVM_ADT_FOLDINGSET_H
1717
1818 #include "llvm/ADT/SmallVector.h"
19 #include "llvm/ADT/StringRef.h"
2019 #include "llvm/ADT/iterator.h"
2120 #include "llvm/Support/Allocator.h"
22 #include "llvm/Support/DataTypes.h"
2321
2422 namespace llvm {
2523 /// This folding set used for two purposes:
9795 /// The result indicates whether the node existed in the folding set.
9896
9997 class FoldingSetNodeID;
98 class StringRef;
10099
101100 //===----------------------------------------------------------------------===//
102101 /// FoldingSetImpl - Implements the folding set functionality. The main
1414 #define LLVM_ADT_SMALLBITVECTOR_H
1515
1616 #include "llvm/ADT/BitVector.h"
17 #include "llvm/Support/Compiler.h"
1817 #include "llvm/Support/MathExtras.h"
1918 #include
2019
1414 #define LLVM_ADT_STRINGMAP_H
1515
1616 #include "llvm/ADT/StringRef.h"
17 #include "llvm/ADT/Twine.h"
1817 #include "llvm/Support/Allocator.h"
1918 #include "llvm/Support/PointerLikeTypeTraits.h"
2019 #include
1515 #ifndef LLVM_IR_COMDAT_H
1616 #define LLVM_IR_COMDAT_H
1717
18 #include "llvm/ADT/StringRef.h"
19 #include "llvm/Support/Compiler.h"
20
2118 namespace llvm {
2219
2320 class raw_ostream;
21 class StringRef;
2422 template class StringMapEntry;
2523
2624 // This is a Name X SelectionKind pair. The reason for having this be an
1414 #ifndef LLVM_IR_DIBUILDER_H
1515 #define LLVM_IR_DIBUILDER_H
1616
17 #include "llvm/ADT/ArrayRef.h"
18 #include "llvm/ADT/StringRef.h"
1917 #include "llvm/IR/DebugInfo.h"
2018 #include "llvm/IR/TrackingMDRef.h"
2119 #include "llvm/IR/ValueHandle.h"
3028 class Constant;
3129 class LLVMContext;
3230 class StringRef;
31 template class ArrayRef;
3332
3433 class DIBuilder {
3534 Module &M;
1919 #ifndef LLVM_IR_DATALAYOUT_H
2020 #define LLVM_IR_DATALAYOUT_H
2121
22 #include "llvm/ADT/DenseMap.h"
2322 #include "llvm/ADT/SmallVector.h"
2423 #include "llvm/IR/DerivedTypes.h"
2524 #include "llvm/IR/Type.h"
3332 namespace llvm {
3433
3534 class Value;
36 class Type;
37 class IntegerType;
3835 class StructType;
3936 class StructLayout;
4037 class Triple;
1616 #ifndef LLVM_IR_DEBUGINFO_H
1717 #define LLVM_IR_DEBUGINFO_H
1818
19 #include "llvm/ADT/DenseMap.h"
2019 #include "llvm/ADT/SmallPtrSet.h"
2120 #include "llvm/ADT/SmallVector.h"
22 #include "llvm/ADT/StringRef.h"
2321 #include "llvm/ADT/iterator_range.h"
2422 #include "llvm/IR/DebugInfoMetadata.h"
2523 #include "llvm/Support/Casting.h"
3129 class Module;
3230 class DbgDeclareInst;
3331 class DbgValueInst;
32 template
33 class DenseMap;
3434
3535 /// \brief Maps from type identifier to the actual MDNode.
3636 typedef DenseMap DITypeIdentifierMap;
1313 #ifndef LLVM_IR_DEBUGINFOMETADATA_H
1414 #define LLVM_IR_DEBUGINFOMETADATA_H
1515
16 #include "llvm/ADT/Optional.h"
1716 #include "llvm/IR/Metadata.h"
1817 #include "llvm/Support/Dwarf.h"
1918
4241 DEFINE_MDNODE_GET_DISTINCT_TEMPORARY(CLASS, FORMAL, ARGS)
4342
4443 namespace llvm {
44
45 template class Optional;
4546
4647 /// \brief Pointer union between a subclass of DINode and MDString.
4748 ///
1414 #ifndef LLVM_IR_DIAGNOSTICINFO_H
1515 #define LLVM_IR_DIAGNOSTICINFO_H
1616
17 #include "llvm/ADT/ArrayRef.h"
1817 #include "llvm/ADT/Twine.h"
1918 #include "llvm/IR/DebugLoc.h"
2019 #include "llvm/IR/Module.h"
1414 #ifndef LLVM_IR_DOMINATORS_H
1515 #define LLVM_IR_DOMINATORS_H
1616
17 #include "llvm/ADT/DenseMap.h"
18 #include "llvm/ADT/DepthFirstIterator.h"
1917 #include "llvm/ADT/GraphTraits.h"
2018 #include "llvm/ADT/SmallPtrSet.h"
21 #include "llvm/ADT/SmallVector.h"
22 #include "llvm/IR/BasicBlock.h"
2319 #include "llvm/IR/CFG.h"
24 #include "llvm/IR/Function.h"
2520 #include "llvm/IR/PassManager.h"
2621 #include "llvm/Pass.h"
27 #include "llvm/Support/Compiler.h"
2822 #include "llvm/Support/GenericDomTree.h"
29 #include "llvm/Support/raw_ostream.h"
30 #include
3123
3224 namespace llvm {
25
26 class Function;
27 class BasicBlock;
28 class raw_ostream;
3329
3430 extern template class DomTreeNodeBase;
3531 extern template class DominatorTreeBase;
1818 #define LLVM_IR_FUNCTION_H
1919
2020 #include "llvm/ADT/iterator_range.h"
21 #include "llvm/ADT/Optional.h"
2221 #include "llvm/IR/Argument.h"
2322 #include "llvm/IR/Attributes.h"
2423 #include "llvm/IR/BasicBlock.h"
2928
3029 namespace llvm {
3130
31 template class Optional;
3232 class FunctionType;
3333 class LLVMContext;
3434 class DISubprogram;
1414 #ifndef LLVM_IR_GLOBALALIAS_H
1515 #define LLVM_IR_GLOBALALIAS_H
1616
17 #include "llvm/ADT/Twine.h"
1817 #include "llvm/ADT/ilist_node.h"
1918 #include "llvm/IR/GlobalIndirectSymbol.h"
2019
2120 namespace llvm {
2221
22 class Twine;
2323 class Module;
2424 template class SymbolTableListTraits;
2525
1717 #ifndef LLVM_IR_GLOBALIFUNC_H
1818 #define LLVM_IR_GLOBALIFUNC_H
1919
20 #include "llvm/ADT/Twine.h"
2120 #include "llvm/ADT/ilist_node.h"
2221 #include "llvm/IR/GlobalIndirectSymbol.h"
2322
2423 namespace llvm {
2524
25 class Twine;
2626 class Module;
2727
2828 // Traits class for using GlobalIFunc in symbol table in Module.
1414 #ifndef LLVM_IR_GLOBALOBJECT_H
1515 #define LLVM_IR_GLOBALOBJECT_H
1616
17 #include "llvm/IR/Constant.h"
1817 #include "llvm/IR/DerivedTypes.h"
1918 #include "llvm/IR/GlobalValue.h"
2019
1616 #define LLVM_IR_INTRINSICS_H
1717
1818 #include "llvm/ADT/ArrayRef.h"
19 #include "llvm/ADT/None.h"
1920 #include
2021
2122 namespace llvm {
1515 #define LLVM_IR_LLVMCONTEXT_H
1616
1717 #include "llvm/Support/CBindingWrapping.h"
18 #include "llvm/Support/Compiler.h"
1918 #include "llvm/Support/Options.h"
2019
2120 namespace llvm {
1313 #ifndef LLVM_IR_LEGACYPASSMANAGERS_H
1414 #define LLVM_IR_LEGACYPASSMANAGERS_H
1515
16 #include "llvm/ADT/ArrayRef.h"
1716 #include "llvm/ADT/DenseMap.h"
1817 #include "llvm/ADT/FoldingSet.h"
1918 #include "llvm/ADT/SmallPtrSet.h"
9291 #include "llvm/Support/PrettyStackTrace.h"
9392
9493 namespace llvm {
95 class Module;
96 class Pass;
97 class StringRef;
98 class Value;
99 class Timer;
100 class PMDataManager;
94 template class ArrayRef;
95 class Module;
96 class Pass;
97 class StringRef;
98 class Value;
99 class Timer;
100 class PMDataManager;
101101
102102 // enums for debugging strings
103103 enum PassDebuggingString {
1515
1616 #include "llvm/ADT/DenseMap.h"
1717 #include "llvm/IR/GlobalValue.h"
18 #include "llvm/Support/raw_ostream.h"
1918
2019 namespace llvm {
2120
2221 class DataLayout;
2322 template class SmallVectorImpl;
2423 class Twine;
24 class raw_ostream;
2525
2626 class Mangler {
2727 /// We need to give global values the same name every time they are mangled.
1414 #ifndef LLVM_IR_MODULE_H
1515 #define LLVM_IR_MODULE_H
1616
17 #include "llvm/ADT/Optional.h"
1817 #include "llvm/ADT/iterator_range.h"
1918 #include "llvm/IR/Comdat.h"
2019 #include "llvm/IR/DataLayout.h"
2928 #include
3029
3130 namespace llvm {
31 template class Optional;
3232 class FunctionType;
3333 class GVMaterializer;
3434 class LLVMContext;
2121 #include "llvm/ADT/SmallString.h"
2222 #include "llvm/ADT/StringExtras.h"
2323 #include "llvm/ADT/StringMap.h"
24 #include "llvm/IR/Function.h"
2524 #include "llvm/IR/Module.h"
26 #include "llvm/Support/MemoryBuffer.h"
27 #include "llvm/Support/raw_ostream.h"
2825
2926 #include
3027
4343 #include "llvm/IR/Function.h"
4444 #include "llvm/IR/Module.h"
4545 #include "llvm/IR/PassManagerInternal.h"
46 #include "llvm/Support/CommandLine.h"
4746 #include "llvm/Support/Debug.h"
4847 #include "llvm/Support/TypeName.h"
4948 #include "llvm/Support/raw_ostream.h"
5352 #include
5453
5554 namespace llvm {
56
57 class Module;
58 class Function;
5955
6056 /// \brief An abstract set of preserved analyses following a transformation pass
6157 /// run.
1414 #define LLVM_IR_TRACKINGMDREF_H
1515
1616 #include "llvm/IR/Metadata.h"
17 #include "llvm/Support/Casting.h"
1817
1918 namespace llvm {
2019
1515 #define LLVM_IR_TYPE_H
1616
1717 #include "llvm/ADT/APFloat.h"
18 #include "llvm/ADT/ArrayRef.h"
1819 #include "llvm/ADT/SmallPtrSet.h"
1920 #include "llvm/Support/CBindingWrapping.h"
2021 #include "llvm/Support/Casting.h"
2626
2727 #include "llvm/ADT/PointerIntPair.h"
2828 #include "llvm/Support/CBindingWrapping.h"
29 #include "llvm/Support/Compiler.h"
3029 #include
3130 #include
3231
1414 #ifndef LLVM_IR_USELISTORDER_H
1515 #define LLVM_IR_USELISTORDER_H
1616
17 #include "llvm/ADT/ArrayRef.h"
18 #include "llvm/ADT/SmallVector.h"
1917 #include
2018
2119 namespace llvm {
1818 #ifndef LLVM_IR_USER_H
1919 #define LLVM_IR_USER_H
2020
21 #include "llvm/ADT/ArrayRef.h"
2221 #include "llvm/ADT/iterator.h"
2322 #include "llvm/ADT/iterator_range.h"
2423 #include "llvm/IR/Value.h"
2625 #include "llvm/Support/ErrorHandling.h"
2726
2827 namespace llvm {
28
29 template class ArrayRef;
30 template class MutableArrayRef;
2931
3032 /// \brief Compile-time customization of User operands.
3133 ///
1717 #include "llvm/IR/Use.h"
1818 #include "llvm/Support/CBindingWrapping.h"
1919 #include "llvm/Support/Casting.h"
20 #include "llvm/Support/Compiler.h"
2120
2221 namespace llvm {
2322
1313 #ifndef LLVM_IR_VALUESYMBOLTABLE_H
1414 #define LLVM_IR_VALUESYMBOLTABLE_H
1515
16 #include "llvm/ADT/SmallString.h"
1716 #include "llvm/ADT/StringMap.h"
1817 #include "llvm/IR/Value.h"
1918 #include "llvm/Support/DataTypes.h"
2019
2120 namespace llvm {
2221 template class SymbolTableListTraits;
22 template class SmallString;
2323 class BasicBlock;
2424 class Function;
2525 class NamedMDNode;
2020 #ifndef LLVM_IR_VERIFIER_H
2121 #define LLVM_IR_VERIFIER_H
2222
23 #include "llvm/ADT/StringRef.h"
2423 #include "llvm/IR/PassManager.h"
25 #include
2624
2725 namespace llvm {
2826
1010 #define LLVM_MC_MCPARSER_MCASMLEXER_H
1111
1212 #include "llvm/ADT/APInt.h"
13 #include "llvm/ADT/ArrayRef.h"
14 #include "llvm/ADT/SmallVector.h"
1315 #include "llvm/ADT/StringRef.h"
1416 #include "llvm/Support/Compiler.h"
1517 #include "llvm/Support/DataTypes.h"
1111 //===----------------------------------------------------------------------===//
1212
1313 #include "MILexer.h"
14 #include "llvm/ADT/None.h"
1415 #include "llvm/ADT/StringExtras.h"
1516 #include "llvm/ADT/StringSwitch.h"
1617 #include "llvm/ADT/Twine.h"
1111 //
1212 //===----------------------------------------------------------------------===//
1313
14 #include "llvm/CodeGen/Passes.h"
1514 #include "llvm/ADT/DenseMap.h"
1615 #include "llvm/ADT/IndexedMap.h"
1716 #include "llvm/ADT/STLExtras.h"
2423 #include "llvm/CodeGen/MachineInstr.h"
2524 #include "llvm/CodeGen/MachineInstrBuilder.h"
2625 #include "llvm/CodeGen/MachineRegisterInfo.h"
26 #include "llvm/CodeGen/Passes.h"
2727 #include "llvm/CodeGen/RegAllocRegistry.h"
2828 #include "llvm/CodeGen/RegisterClassInfo.h"
29 #include "llvm/IR/BasicBlock.h"
3029 #include "llvm/IR/DebugInfo.h"
31 #include "llvm/Support/CommandLine.h"
3230 #include "llvm/Support/Debug.h"
3331 #include "llvm/Support/ErrorHandling.h"
34 #include "llvm/Support/raw_ostream.h"
3532 #include "llvm/Target/TargetInstrInfo.h"
3633 #include "llvm/Target/TargetSubtargetInfo.h"
3734 #include
1313
1414 #include "llvm/ADT/APFloat.h"
1515 #include "llvm/ADT/APSInt.h"
16 #include "llvm/ADT/ArrayRef.h"
1617 #include "llvm/ADT/FoldingSet.h"
1718 #include "llvm/ADT/Hashing.h"
1819 #include "llvm/ADT/StringExtras.h"
1212 //===----------------------------------------------------------------------===//
1313
1414 #include "llvm/ADT/APInt.h"
15 #include "llvm/ADT/ArrayRef.h"
1516 #include "llvm/ADT/FoldingSet.h"
1617 #include "llvm/ADT/Hashing.h"
1718 #include "llvm/ADT/SmallString.h"
1313
1414 #include "llvm/ADT/APSInt.h"
1515 #include "llvm/ADT/FoldingSet.h"
16 #include "llvm/ADT/StringRef.h"
1617
1718 using namespace llvm;
1819
1212
1313 #include "llvm/Support/ScaledNumber.h"
1414 #include "llvm/ADT/APFloat.h"
15 #include "llvm/ADT/ArrayRef.h"
1516 #include "llvm/Support/Debug.h"
1617 #include "llvm/Support/raw_ostream.h"
1718
77 //===----------------------------------------------------------------------===//
88
99 #include "llvm/ADT/APInt.h"
10 #include "llvm/ADT/ArrayRef.h"
1011 #include "llvm/ADT/SmallString.h"
1112 #include "gtest/gtest.h"
1213 #include
13 #include
1414
1515 using namespace llvm;
1616
66 //
77 //===----------------------------------------------------------------------===//
88
9 #include "llvm/ADT/StringMap.h"
10 #include "llvm/ADT/Twine.h"
11 #include "llvm/Support/DataTypes.h"
912 #include "gtest/gtest.h"
10 #include "llvm/ADT/StringMap.h"
11 #include "llvm/Support/DataTypes.h"
1213 #include
1314 using namespace llvm;
1415