[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:32 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results

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

<details>
<summary>[code=1] tools/mlir/lib/Conversion/TosaToSPIRVTosa/CMakeFiles/obj.MLIRTosaToSPIRVTosa.dir/TosaToSPIRVTosaOps.cpp.obj</summary>

```
FAILED: [code=1] tools/mlir/lib/Conversion/TosaToSPIRVTosa/CMakeFiles/obj.MLIRTosaToSPIRVTosa.dir/TosaToSPIRVTosaOps.cpp.obj
sccache C:\clang\clang-msvc\bin\clang-cl.exe  /nologo -TP -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_GLIBCXX_ASSERTIONS -D_HAS_EXCEPTIONS=0 -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -IC:\_work\llvm-project\llvm-project\build\tools\mlir\lib\Conversion\TosaToSPIRVTosa -IC:\_work\llvm-project\llvm-project\mlir\lib\Conversion\TosaToSPIRVTosa -IC:\_work\llvm-project\llvm-project\build\tools\mlir\include -IC:\_work\llvm-project\llvm-project\mlir\include -IC:\_work\llvm-project\llvm-project\build\include -IC:\_work\llvm-project\llvm-project\llvm\include /DWIN32 /D_WINDOWS   /Zc:inline /Zc:__cplusplus /Oi /Brepro /bigobj /permissive- -Werror=unguarded-availability-new /W4  -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -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 /Gw -Wundef -Werror=mismatched-tags -Werror=global-constructors /O2 /Ob2  -std:c++17 -MD -UNDEBUG /EHs-c- /GR- /showIncludes /Fotools\mlir\lib\Conversion\TosaToSPIRVTosa\CMakeFiles\obj.MLIRTosaToSPIRVTosa.dir\TosaToSPIRVTosaOps.cpp.obj /Fdtools\mlir\lib\Conversion\TosaToSPIRVTosa\CMakeFiles\obj.MLIRTosaToSPIRVTosa.dir\ -c -- C:\_work\llvm-project\llvm-project\mlir\lib\Conversion\TosaToSPIRVTosa\TosaToSPIRVTosaOps.cpp
C:\_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) {
|                           ~~~~~~~~~~~~~~~~~~~^~~~~~~
C:\_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> {
|       ^
C:\_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) {
|                           ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
C:\_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> {
|       ^
C:\_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) {
|                           ~~~~~~~~~~~~~~~~~~~~^~~~~~~
C:\_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> {
|       ^
C:\_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();
|          ~~~~~~~ ^
C:\_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));
|                                                     ^
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\memory(3630,32): note: in instantiation of member function 'mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::TanhOp, mlir::spirv::TosaTanhOp>::matchAndRewrite' requested here
3630 |     return unique_ptr<_Ty>(new _Ty(_STD forward<_Types>(_Args)...));
|                                ^
C:\_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 *, 0>' requested here
256 |         std::make_unique<T>(std::forward<Args>(args)...);
|              ^
C:\_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)...);
|                         ^
C:\_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),
|      ^
C:\_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<
|            ^
C:\_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();
|          ~~~~~~~ ^
C:\_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));
|                                                     ^
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\memory(3630,32): note: in instantiation of member function 'mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::SigmoidOp, mlir::spirv::TosaSigmoidOp>::matchAndRewrite' requested here
3630 |     return unique_ptr<_Ty>(new _Ty(_STD forward<_Types>(_Args)...));
|                                ^
C:\_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 *, 0>' requested here
256 |         std::make_unique<T>(std::forward<Args>(args)...);
|              ^
C:\_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)...);
|                         ^
C:\_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),
|      ^
C:\_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<
|            ^
C:\_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();
|          ~~~~~~~ ^
C:\_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));
|                                                     ^
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\memory(3630,32): note: in instantiation of member function 'mlir::tosa::(anonymous namespace)::UnaryElementwiseOpConvert<mlir::tosa::ErfOp, mlir::spirv::TosaErfOp>::matchAndRewrite' requested here
3630 |     return unique_ptr<_Ty>(new _Ty(_STD forward<_Types>(_Args)...));
|                                ^
C:\_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 *, 0>' requested here
256 |         std::make_unique<T>(std::forward<Args>(args)...);
|              ^
C:\_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)...);
|                         ^
C:\_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),
|      ^
C:\_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