18 #ifndef MLIR_SUPPORT_LLVM_H
19 #define MLIR_SUPPORT_LLVM_H
23 #include "llvm/Support/Casting.h"
27 #include "llvm/Support/LogicalResult.h"
30 #if defined(__clang_major__)
31 #if __clang_major__ <= 5
32 #include "llvm/ADT/DenseMapInfo.h"
33 #include "llvm/ADT/SmallVector.h"
51 template <
typename KeyT,
typename ValueT>
54 template <
typename KeyT,
typename ValueT,
typename KeyInfoT,
typename BucketT>
56 template <
typename T,
typename Enable>
58 template <
typename ValueT,
typename ValueInfoT>
60 class MallocAllocator;
63 template <
typename... PT>
65 template <
typename T,
typename Vector,
typename Set,
unsigned N>
67 template <
typename T,
unsigned N>
71 template <
typename T,
unsigned N>
75 template <
typename AllocatorTy>
77 template <
typename T,
typename R>
81 template <
typename T,
typename ResultT>
89 template <
typename Fn>
91 template <
typename IteratorT>
101 using llvm::cast_if_present;
102 using llvm::cast_or_null;
103 using llvm::dyn_cast;
104 using llvm::dyn_cast_if_present;
105 using llvm::dyn_cast_or_null;
107 using llvm::isa_and_nonnull;
108 using llvm::isa_and_present;
112 using llvm::StringLiteral;
113 using llvm::StringRef;
120 using llvm::BitVector;
121 template <
typename T,
typename Enable =
void>
123 template <
typename KeyT,
typename ValueT,
127 template <
typename ValueT,
typename ValueInfoT = DenseMapInfo<ValueT>>
129 template <
typename T,
typename Vector = llvm::SmallVector<T, 0>,
130 typename Set = DenseSet<T>,
unsigned N = 0>
132 template <
typename AllocatorTy = llvm::MallocAllocator>
140 template <
typename T,
typename R = T>
143 template <
typename T,
typename ResultT =
void>
150 using llvm::DynamicAPInt;
151 template <
typename Fn>
154 using llvm::raw_ostream;
161 using llvm::FailureOr;
162 using llvm::LogicalResult;
163 using llvm::ParseResult;
164 using llvm::succeeded;
The OpAsmOpInterface, see OpAsmInterface.td for more details.
Include the generated interface declarations.