[PATCH] D72022: [mlir][Linalg] Extend generic ops to allow tensors
Nicolas Vasilache via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 2 07:35:42 PST 2020
nicolasvasilache marked 2 inline comments as done.
nicolasvasilache added inline comments.
================
Comment at: mlir/tools/mlir-tblgen/RewriterGen.cpp:577
+ if (resultTree.isNativeCodeCall()) {
+ os << symbolInfoMap.getAllRangeUse(
+ val, "SmallVector<Value, 4> values{0};", "\n");
----------------
rriddle wrote:
> nicolasvasilache wrote:
> > rriddle wrote:
> > > It isn't immediately clear to me why this is necessary. What return value is convertible to small vector, but not ArrayRef for example?
> > Reworked and added a comment.
> Could you use ValueRange instead?
Not immediately:
```
/usr/local/google/home/ntv/work/github/llvm-project/mlir/include/mlir/IR/OperationSupport.h:623:3: note: candidate constructor
ValueRange(iterator_range<OperandRange::iterator> values)
^
/usr/local/google/home/ntv/work/github/llvm-project/mlir/include/mlir/IR/OperationSupport.h:625:3: note: candidate constructor
ValueRange(iterator_range<ResultRange::iterator> values)
^
/usr/local/google/home/ntv/work/github/llvm-project/mlir/include/mlir/IR/OperationSupport.h:627:3: note: candidate constructor
ValueRange(ArrayRef<Value> values = llvm::None);
^
/usr/local/google/home/ntv/work/github/llvm-project/mlir/include/mlir/IR/OperationSupport.h:628:3: note: candidate constructor
ValueRange(OperandRange values);
^
/usr/local/google/home/ntv/work/github/llvm-project/mlir/include/mlir/IR/OperationSupport.h:629:3: note: candidate constructor
ValueRange(ResultRange values);
^
/usr/local/google/home/ntv/work/github/llvm-project/mlir/include/mlir/Support/STLExtras.h:223:3: note: candidate inherited constructor
indexed_accessor_range_base(const iterator_range<iterator> &range)
^
/usr/local/google/home/ntv/work/github/llvm-project/mlir/include/mlir/IR/OperationSupport.h:613:21: note: constructor from base class 'indexed_accessor_range_base<mlir::ValueRange, llvm::PointerUnion<const mlir::Value *, mlir::OpOperand *, mlir::OpResult *>, mlir::Value, mlir::Value, mlir::Value>' inherited here
using RangeBaseT::RangeBaseT;
```
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D72022/new/
https://reviews.llvm.org/D72022
More information about the llvm-commits
mailing list