[all-commits] [llvm/llvm-project] 7d1452: [mlir] Refactor OpInterface internals to be faster...
River Riddle via All-commits
all-commits at lists.llvm.org
Wed Jun 24 17:32:56 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 7d1452d8373e5aaaa94b5d0d6c9a1dc4be457311
https://github.com/llvm/llvm-project/commit/7d1452d8373e5aaaa94b5d0d6c9a1dc4be457311
Author: River Riddle <riddleriver at gmail.com>
Date: 2020-06-24 (Wed, 24 Jun 2020)
Changed paths:
M mlir/docs/Interfaces.md
M mlir/include/mlir/IR/OpDefinition.h
M mlir/include/mlir/IR/OperationSupport.h
A mlir/include/mlir/Support/InterfaceSupport.h
M mlir/lib/IR/MLIRContext.cpp
Log Message:
-----------
[mlir] Refactor OpInterface internals to be faster and factor out common bits.
This revision adds a new support header, InterfaceSupport, to contain various generic bits of functionality for implementing "Interfaces". Interfaces embody a mechanism for attaching concept-based polymorphism to a type system. With this refactoring a new InterfaceMap type is added to allow for efficient interface lookups without going through an indirect call. This should provide a decent performance speedup without changing the size of AbstractOperation.
In a future revision, this functionality will also be used to bring Interface like functionality to Attributes and Types.
Differential Revision: https://reviews.llvm.org/D81882
More information about the All-commits
mailing list