[Mlir-commits] [mlir] [mlir][tosa][spirv] Lower TOSA elementwise ops to SPIR-V TOSA (PR #199505)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Tue May 26 07:14:31 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

The build failed before running any tests. Click on a failure below to see the details.

<details>
<summary>tools/mlir/lib/Conversion/TosaToSPIRVTosa/CMakeFiles/obj.MLIRTosaToSPIRVTosa.dir/TosaToSPIRVTosaOps.cpp.o</summary>

```
FAILED: tools/mlir/lib/Conversion/TosaToSPIRVTosa/CMakeFiles/obj.MLIRTosaToSPIRVTosa.dir/TosaToSPIRVTosaOps.cpp.o
sccache /opt/llvm/bin/clang++ -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/mlir/lib/Conversion/TosaToSPIRVTosa -I/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/mlir/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include -gmlt -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wundef -Werror=mismatched-tags -Werror=global-constructors -O3 -DNDEBUG -std=c++17 -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -MD -MT tools/mlir/lib/Conversion/TosaToSPIRVTosa/CMakeFiles/obj.MLIRTosaToSPIRVTosa.dir/TosaToSPIRVTosaOps.cpp.o -MF tools/mlir/lib/Conversion/TosaToSPIRVTosa/CMakeFiles/obj.MLIRTosaToSPIRVTosa.dir/TosaToSPIRVTosaOps.cpp.o.d -o tools/mlir/lib/Conversion/TosaToSPIRVTosa/CMakeFiles/obj.MLIRTosaToSPIRVTosa.dir/TosaToSPIRVTosaOps.cpp.o -c /home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:28:46: error: constexpr function's 1st parameter type 'tosa::ErfOpAdaptor' is not a literal type
28 | constexpr Value getInput1(tosa::ErfOpAdaptor adaptor) {
|                           ~~~~~~~~~~~~~~~~~~~^~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h.inc:9330:7: note: 'ErfOpAdaptor' is not literal because it is not an aggregate and has no constexpr constructors other than copy or move constructors
9330 | class ErfOpAdaptor : public ErfOpGenericAdaptor<::mlir::ValueRange> {
|       ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:32:50: error: constexpr function's 1st parameter type 'tosa::SigmoidOpAdaptor' is not a literal type
32 | constexpr Value getInput1(tosa::SigmoidOpAdaptor adaptor) {
|                           ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h.inc:20554:7: note: 'SigmoidOpAdaptor' is not literal because it is not an aggregate and has no constexpr constructors other than copy or move constructors
20554 | class SigmoidOpAdaptor : public SigmoidOpGenericAdaptor<::mlir::ValueRange> {
|       ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:36:47: error: constexpr function's 1st parameter type 'tosa::TanhOpAdaptor' is not a literal type
36 | constexpr Value getInput1(tosa::TanhOpAdaptor adaptor) {
|                           ~~~~~~~~~~~~~~~~~~~~^~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h.inc:21858:7: note: 'TanhOpAdaptor' is not literal because it is not an aggregate and has no constexpr constructors other than copy or move constructors
21858 | class TanhOpAdaptor : public TanhOpGenericAdaptor<::mlir::ValueRange> {
|       ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:25:18: error: no member named 'getInput1' in 'mlir::tosa::TanhOpAdaptor'
25 |   return adaptor.getInput1();
|          ~~~~~~~ ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:50:53: note: in instantiation of function template specialization 'mlir::tosa::(anonymous namespace)::getInput1<mlir::tosa::TanhOpAdaptor>' requested here
50 |     rewriter.replaceOpWithNewOp<TargetOp>(op, type, getInput1(adaptor));
|                                                     ^
/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/unique_ptr.h:1070:34: note: in instantiation of member function 'mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::TanhOp, mlir::spirv::TosaTanhOp>::matchAndRewrite' requested here
1070 |     { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
|                                  ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/include/mlir/IR/PatternMatch.h:256:14: note: in instantiation of function template specialization 'std::make_unique<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::TanhOp, mlir::spirv::TosaTanhOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *>' requested here
256 |         std::make_unique<T>(std::forward<Args>(args)...);
|              ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/include/mlir/IR/PatternMatch.h:1007:25: note: in instantiation of function template specialization 'mlir::RewritePattern::create<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::TanhOp, mlir::spirv::TosaTanhOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *>' requested here
1007 |         RewritePattern::create<T>(std::forward<Args>(args)...);
|                         ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/include/mlir/IR/PatternMatch.h:864:6: note: in instantiation of function template specialization 'mlir::RewritePatternSet::addImpl<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::TanhOp, mlir::spirv::TosaTanhOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *>' requested here
864 |     (addImpl<Ts>(/*debugLabels=*/{}, std::forward<ConstructorArg>(arg),
|      ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:94:12: note: in instantiation of function template specialization 'mlir::RewritePatternSet::add<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ErfOp, mlir::spirv::TosaErfOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SigmoidOp, mlir::spirv::TosaSigmoidOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::TanhOp, mlir::spirv::TosaTanhOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::AddOp, mlir::spirv::TosaAddOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::BitwiseAndOp, mlir::spirv::TosaBitwiseAndOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::BitwiseOrOp, mlir::spirv::TosaBitwiseOrOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::BitwiseXorOp, mlir::spirv::TosaBitwiseXorOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::IntDivOp, mlir::spirv::TosaIntDivOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalAndOp, mlir::spirv::TosaLogicalAndOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalLeftShiftOp, mlir::spirv::TosaLogicalLeftShiftOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalRightShiftOp, mlir::spirv::TosaLogicalRightShiftOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalOrOp, mlir::spirv::TosaLogicalOrOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalXorOp, mlir::spirv::TosaLogicalXorOp>, mlir::tosa::(anonymous namespace)::BinaryNanModeElementwiseOpConvert<mlir::tosa::MaximumOp, mlir::spirv::TosaMaximumOp>, mlir::tosa::(anonymous namespace)::BinaryNanModeElementwiseOpConvert<mlir::tosa::MinimumOp, mlir::spirv::TosaMinimumOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::PowOp, mlir::spirv::TosaPowOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::SubOp, mlir::spirv::TosaSubOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::AbsOp, mlir::spirv::TosaAbsOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::BitwiseNotOp, mlir::spirv::TosaBitwiseNotOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::CeilOp, mlir::spirv::TosaCeilOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ClzOp, mlir::spirv::TosaClzOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::CosOp, mlir::spirv::TosaCosOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ExpOp, mlir::spirv::TosaExpOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::FloorOp, mlir::spirv::TosaFloorOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::LogOp, mlir::spirv::TosaLogOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::LogicalNotOp, mlir::spirv::TosaLogicalNotOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ReciprocalOp, mlir::spirv::TosaReciprocalOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::RsqrtOp, mlir::spirv::TosaRsqrtOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SinOp, mlir::spirv::TosaSinOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::EqualOp, mlir::spirv::TosaEqualOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::GreaterOp, mlir::spirv::TosaGreaterOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::GreaterEqualOp, mlir::spirv::TosaGreaterEqualOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *, void>' requested here
94 |   patterns.add<
|            ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:25:18: error: no member named 'getInput1' in 'mlir::tosa::SigmoidOpAdaptor'
25 |   return adaptor.getInput1();
|          ~~~~~~~ ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:50:53: note: in instantiation of function template specialization 'mlir::tosa::(anonymous namespace)::getInput1<mlir::tosa::SigmoidOpAdaptor>' requested here
50 |     rewriter.replaceOpWithNewOp<TargetOp>(op, type, getInput1(adaptor));
|                                                     ^
/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/unique_ptr.h:1070:34: note: in instantiation of member function 'mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SigmoidOp, mlir::spirv::TosaSigmoidOp>::matchAndRewrite' requested here
1070 |     { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
|                                  ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/include/mlir/IR/PatternMatch.h:256:14: note: in instantiation of function template specialization 'std::make_unique<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SigmoidOp, mlir::spirv::TosaSigmoidOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *>' requested here
256 |         std::make_unique<T>(std::forward<Args>(args)...);
|              ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/include/mlir/IR/PatternMatch.h:1007:25: note: in instantiation of function template specialization 'mlir::RewritePattern::create<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SigmoidOp, mlir::spirv::TosaSigmoidOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *>' requested here
1007 |         RewritePattern::create<T>(std::forward<Args>(args)...);
|                         ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/include/mlir/IR/PatternMatch.h:864:6: note: in instantiation of function template specialization 'mlir::RewritePatternSet::addImpl<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SigmoidOp, mlir::spirv::TosaSigmoidOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *>' requested here
864 |     (addImpl<Ts>(/*debugLabels=*/{}, std::forward<ConstructorArg>(arg),
|      ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:94:12: note: in instantiation of function template specialization 'mlir::RewritePatternSet::add<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ErfOp, mlir::spirv::TosaErfOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SigmoidOp, mlir::spirv::TosaSigmoidOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::TanhOp, mlir::spirv::TosaTanhOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::AddOp, mlir::spirv::TosaAddOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::BitwiseAndOp, mlir::spirv::TosaBitwiseAndOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::BitwiseOrOp, mlir::spirv::TosaBitwiseOrOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::BitwiseXorOp, mlir::spirv::TosaBitwiseXorOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::IntDivOp, mlir::spirv::TosaIntDivOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalAndOp, mlir::spirv::TosaLogicalAndOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalLeftShiftOp, mlir::spirv::TosaLogicalLeftShiftOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalRightShiftOp, mlir::spirv::TosaLogicalRightShiftOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalOrOp, mlir::spirv::TosaLogicalOrOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalXorOp, mlir::spirv::TosaLogicalXorOp>, mlir::tosa::(anonymous namespace)::BinaryNanModeElementwiseOpConvert<mlir::tosa::MaximumOp, mlir::spirv::TosaMaximumOp>, mlir::tosa::(anonymous namespace)::BinaryNanModeElementwiseOpConvert<mlir::tosa::MinimumOp, mlir::spirv::TosaMinimumOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::PowOp, mlir::spirv::TosaPowOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::SubOp, mlir::spirv::TosaSubOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::AbsOp, mlir::spirv::TosaAbsOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::BitwiseNotOp, mlir::spirv::TosaBitwiseNotOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::CeilOp, mlir::spirv::TosaCeilOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ClzOp, mlir::spirv::TosaClzOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::CosOp, mlir::spirv::TosaCosOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ExpOp, mlir::spirv::TosaExpOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::FloorOp, mlir::spirv::TosaFloorOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::LogOp, mlir::spirv::TosaLogOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::LogicalNotOp, mlir::spirv::TosaLogicalNotOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ReciprocalOp, mlir::spirv::TosaReciprocalOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::RsqrtOp, mlir::spirv::TosaRsqrtOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SinOp, mlir::spirv::TosaSinOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::EqualOp, mlir::spirv::TosaEqualOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::GreaterOp, mlir::spirv::TosaGreaterOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::GreaterEqualOp, mlir::spirv::TosaGreaterEqualOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *, void>' requested here
94 |   patterns.add<
|            ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:25:18: error: no member named 'getInput1' in 'mlir::tosa::ErfOpAdaptor'
25 |   return adaptor.getInput1();
|          ~~~~~~~ ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:50:53: note: in instantiation of function template specialization 'mlir::tosa::(anonymous namespace)::getInput1<mlir::tosa::ErfOpAdaptor>' requested here
50 |     rewriter.replaceOpWithNewOp<TargetOp>(op, type, getInput1(adaptor));
|                                                     ^
/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/unique_ptr.h:1070:34: note: in instantiation of member function 'mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ErfOp, mlir::spirv::TosaErfOp>::matchAndRewrite' requested here
1070 |     { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
|                                  ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/include/mlir/IR/PatternMatch.h:256:14: note: in instantiation of function template specialization 'std::make_unique<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ErfOp, mlir::spirv::TosaErfOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *>' requested here
256 |         std::make_unique<T>(std::forward<Args>(args)...);
|              ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/include/mlir/IR/PatternMatch.h:1007:25: note: in instantiation of function template specialization 'mlir::RewritePattern::create<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ErfOp, mlir::spirv::TosaErfOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *>' requested here
1007 |         RewritePattern::create<T>(std::forward<Args>(args)...);
|                         ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/include/mlir/IR/PatternMatch.h:864:6: note: in instantiation of function template specialization 'mlir::RewritePatternSet::addImpl<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ErfOp, mlir::spirv::TosaErfOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *>' requested here
864 |     (addImpl<Ts>(/*debugLabels=*/{}, std::forward<ConstructorArg>(arg),
|      ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp:94:12: note: in instantiation of function template specialization 'mlir::RewritePatternSet::add<mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ErfOp, mlir::spirv::TosaErfOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SigmoidOp, mlir::spirv::TosaSigmoidOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::TanhOp, mlir::spirv::TosaTanhOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::AddOp, mlir::spirv::TosaAddOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::BitwiseAndOp, mlir::spirv::TosaBitwiseAndOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::BitwiseOrOp, mlir::spirv::TosaBitwiseOrOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::BitwiseXorOp, mlir::spirv::TosaBitwiseXorOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::IntDivOp, mlir::spirv::TosaIntDivOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalAndOp, mlir::spirv::TosaLogicalAndOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalLeftShiftOp, mlir::spirv::TosaLogicalLeftShiftOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalRightShiftOp, mlir::spirv::TosaLogicalRightShiftOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalOrOp, mlir::spirv::TosaLogicalOrOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::LogicalXorOp, mlir::spirv::TosaLogicalXorOp>, mlir::tosa::(anonymous namespace)::BinaryNanModeElementwiseOpConvert<mlir::tosa::MaximumOp, mlir::spirv::TosaMaximumOp>, mlir::tosa::(anonymous namespace)::BinaryNanModeElementwiseOpConvert<mlir::tosa::MinimumOp, mlir::spirv::TosaMinimumOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::PowOp, mlir::spirv::TosaPowOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::SubOp, mlir::spirv::TosaSubOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::AbsOp, mlir::spirv::TosaAbsOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::BitwiseNotOp, mlir::spirv::TosaBitwiseNotOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::CeilOp, mlir::spirv::TosaCeilOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ClzOp, mlir::spirv::TosaClzOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::CosOp, mlir::spirv::TosaCosOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ExpOp, mlir::spirv::TosaExpOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::FloorOp, mlir::spirv::TosaFloorOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::LogOp, mlir::spirv::TosaLogOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::LogicalNotOp, mlir::spirv::TosaLogicalNotOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ReciprocalOp, mlir::spirv::TosaReciprocalOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::RsqrtOp, mlir::spirv::TosaRsqrtOp>, mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SinOp, mlir::spirv::TosaSinOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::EqualOp, mlir::spirv::TosaEqualOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::GreaterOp, mlir::spirv::TosaGreaterOp>, mlir::tosa::(anonymous namespace)::BinaryElementwiseOpConvert<mlir::tosa::GreaterEqualOp, mlir::spirv::TosaGreaterEqualOp>, mlir::SPIRVTypeConverter &, mlir::MLIRContext *, void>' requested here
94 |   patterns.add<
|            ^
6 errors generated.
```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/199505


More information about the Mlir-commits mailing list