[llvm-branch-commits] [llvm] [LV] NFCI: Create VPExpressions in transformToPartialReductions. (PR #182863)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Thu Mar 12 07:04:30 PDT 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results
* 3104 tests passed
* 29 tests skipped
All executed tests passed, but another part of the build **failed**. Click on a failure below to see the details.
<details>
<summary>[code=1] lib/Transforms/Vectorize/CMakeFiles/LLVMVectorize.dir/VPlanTransforms.cpp.obj</summary>
```
FAILED: [code=1] lib/Transforms/Vectorize/CMakeFiles/LLVMVectorize.dir/VPlanTransforms.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\lib\Transforms\Vectorize -IC:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize -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 /O2 /Ob2 -std:c++17 -MD -UNDEBUG /EHs-c- /GR- /showIncludes /Folib\Transforms\Vectorize\CMakeFiles\LLVMVectorize.dir\VPlanTransforms.cpp.obj /Fdlib\Transforms\Vectorize\CMakeFiles\LLVMVectorize.dir\LLVMVectorize.pdb -c -- C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp(4463,45): warning: lambda capture 'Red' is not used [-Wunused-lambda-capture]
4463 | auto ExtendAndReplaceConstantOp = [&Ctx, &Red](VPWidenCastRecipe *ExtA,
| ~~~^~~
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp(6241,29): error: no matching constructor for initialization of 'VPPartialReductionChain'
6241 | VPPartialReductionChain Link(
| ^
6242 | {UpdateR, *ExtendedOp,
| ~~~~~~~~~~~~~~~~~~~~~~
6243 | static_cast<unsigned>(PHISize.getKnownScalarFactor(ExtSrcSize)), RK});
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp(5815,8): note: candidate constructor (the implicit copy constructor) not viable: cannot convert initializer list argument to 'const VPPartialReductionChain'
5815 | struct VPPartialReductionChain {
| ^~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp(5815,8): note: candidate constructor (the implicit move constructor) not viable: cannot convert initializer list argument to 'VPPartialReductionChain'
5815 | struct VPPartialReductionChain {
| ^~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp(5815,8): note: candidate constructor (the implicit default constructor) not viable: requires 0 arguments, but 1 was provided
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp(6245,13): error: no viable conversion from '(lambda at C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp:6245:13)' to 'const std::function<bool (ElementCount)>'
6245 | [&](ElementCount VF) {
| ^~~~~~~~~~~~~~~~~~~~~~
6246 | InstructionCost Cost =
| ~~~~~~~~~~~~~~~~~~~~~~
6247 | getPartialReductionLinkCost(CostCtx, Link, VF);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6248 | Link.PartialReductionCost[VF] = Cost;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6249 | return Cost.isValid();
| ~~~~~~~~~~~~~~~~~~~~~~
6250 | },
| ~
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\functional(1096,5): note: candidate constructor not viable: no known conversion from '(lambda at C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp:6245:13)' to 'nullptr_t' (aka 'std::nullptr_t') for 1st argument
1096 | function(nullptr_t) noexcept {}
| ^ ~~~~~~~~~
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\functional(1098,5): note: candidate constructor not viable: no known conversion from '(lambda at C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp:6245:13)' to 'const function<bool (llvm::ElementCount)> &' for 1st argument
1098 | function(const function& _Right) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\functional(1149,5): note: candidate constructor not viable: no known conversion from '(lambda at C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp:6245:13)' to 'function<bool (llvm::ElementCount)> &&' for 1st argument
1149 | function(function&& _Right) noexcept {
| ^ ~~~~~~~~~~~~~~~~~
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\functional(1103,5): note: candidate template ignored: requirement 'conjunction_v<std::negation<std::is_same<(lambda at C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp:6245:13), std::function<bool (llvm::ElementCount)>>>, std::_Is_invocable_r<bool, (lambda at C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp:6245:13) &, llvm::ElementCount>>' was not satisfied [with _Fx = (lambda at C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\VPlanTransforms.cpp:6245:13)]
1103 | function(_Fx&& _Func) {
| ^
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\Vectorize\LoopVectorizationPlanner.h(605,69): note: passing argument to parameter 'Predicate' here
605 | getDecisionAndClampRange(const std::function<bool(ElementCount)> &Predicate,
| ^
1 warning and 2 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/182863
More information about the llvm-branch-commits
mailing list