llvm-project/mlir/lib/Interfaces
River Riddle 58e7bf78a3 [mlir] Add isa/dyn_cast support for dialect interfaces
This matches the same API usage as attributes/ops/types. For example:

```c++
Dialect *dialect = ...;

// Instead of this:
if (auto *interface = dialect->getRegisteredInterface<DialectInlinerInterface>())

// You can do this:
if (auto *interface = dyn_cast<DialectInlinerInterface>(dialect))
```

Differential Revision: https://reviews.llvm.org/D117859
2022-01-31 19:24:34 -08:00
..
CMakeLists.txt [mlir:LoopLikeInterface] Add missing dependency on SideEffectInterfaces 2022-01-24 21:13:31 -08:00
CallInterfaces.cpp [mlir] Update SCCP and the Inliner to use SymbolTableCollection for symbol lookups 2020-10-16 12:08:48 -07:00
CastInterfaces.cpp [mlir] Add an interface for Cast-Like operations 2021-01-20 16:28:17 -08:00
ControlFlowInterfaces.cpp [mlir] Remove getNumberOfExecutions from RegionBranchOpInterface 2022-01-14 13:15:27 -08:00
CopyOpInterface.cpp [mlir] Add redundant copy removal transform 2020-07-03 15:36:25 +02:00
DataLayoutInterfaces.cpp [mlir] Add isa/dyn_cast support for dialect interfaces 2022-01-31 19:24:34 -08:00
DerivedAttributeOpInterface.cpp
InferTypeOpInterface.cpp Apply clang-tidy fixes for performance-for-range-copy to MLIR (NFC) 2022-01-02 22:19:56 +00:00
LoopLikeInterface.cpp [mlir:Transforms] Move out the remaining non-dialect independent transforms and utilities 2022-01-24 19:25:53 -08:00
SideEffectInterfaces.cpp Fix clang-tidy issues in mlir/ (NFC) 2021-12-20 20:25:01 +00:00
TilingInterface.cpp [mlir:TiingInterface] Remove unnecessary include of Tensor.h 2022-01-20 13:10:44 -08:00
VectorInterfaces.cpp [mlir][Vector] Thread 0-d vectors through vector.transfer ops 2021-12-01 16:49:43 +00:00
ViewLikeInterface.cpp [mlir] Provide getMixedOffsets/sizes/strides as free functions 2022-01-13 13:46:31 +03:00