18#ifndef MLIR_SUPPORT_LLVM_H
19#define MLIR_SUPPORT_LLVM_H
23#include "llvm/Support/Casting.h"
27#include "llvm/Support/LogicalResult.h"
43template <
typename KeyT,
typename ValueT>
46template <
typename KeyT,
typename ValueT,
typename KeyInfoT,
typename BucketT>
48template <
typename T,
typename Enable>
50template <
typename ValueT,
typename ValueInfoT>
55template <
typename... PT>
57template <
typename T,
typename Vector,
typename Set,
unsigned N>
59template <
typename T,
unsigned N>
63template <
typename T,
unsigned N>
67template <
typename AllocatorTy>
69template <
typename T,
typename R>
73template <
typename T,
typename ResultT>
83template <
typename IteratorT>
93using llvm::cast_if_present;
94using llvm::cast_or_null;
96using llvm::dyn_cast_if_present;
97using llvm::dyn_cast_or_null;
99using llvm::isa_and_nonnull;
100using llvm::isa_and_present;
104using llvm::StringLiteral;
105using llvm::StringRef;
112using llvm::BitVector;
113template <
typename T,
typename Enable =
void>
115template <
typename KeyT,
typename ValueT,
119template <
typename ValueT,
typename ValueInfoT = DenseMapInfo<ValueT>>
121template <
typename T,
typename Vector = llvm::SmallVector<T, 0>,
122 typename Set = DenseSet<T>,
unsigned N = 0>
124template <
typename AllocatorTy = llvm::MallocAllocator>
132template <
typename T,
typename R = T>
135template <
typename T,
typename ResultT =
void>
142using llvm::DynamicAPInt;
143template <
typename Fn>
146using llvm::raw_ostream;
153using llvm::FailureOr;
154using llvm::LogicalResult;
155using llvm::ParseResult;
156using llvm::succeeded;
The OpAsmOpInterface, see OpAsmInterface.td for more details.
Include the generated interface declarations.
llvm::DenseMapInfo< T, Enable > DenseMapInfo
llvm::DenseSet< ValueT, ValueInfoT > DenseSet
llvm::SetVector< T, Vector, Set, N > SetVector
llvm::StringSet< AllocatorTy > StringSet
llvm::TypeSwitch< T, ResultT > TypeSwitch
llvm::DenseMap< KeyT, ValueT, KeyInfoT, BucketT > DenseMap
llvm::StringSwitch< T, R > StringSwitch
llvm::function_ref< Fn > function_ref