[llvm-branch-commits] [llvm] InstCombine: Handle fptrunc in SimplifyDemandedFPClass (PR #175421)

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Sun Jan 11 01:34:41 PST 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] lib/Transforms/InstCombine/CMakeFiles/LLVMInstCombine.dir/InstCombineSimplifyDemanded.cpp.obj</summary>

```
FAILED: [code=1] lib/Transforms/InstCombine/CMakeFiles/LLVMInstCombine.dir/InstCombineSimplifyDemanded.cpp.obj
sccache C:\clang\clang-msvc\bin\clang-cl.exe  /nologo -TP -DGTEST_HAS_RTTI=0 -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_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib\Transforms\InstCombine -IC:\_work\llvm-project\llvm-project\llvm\lib\Transforms\InstCombine -Iinclude -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  -MD -UNDEBUG /EHs-c- /GR- -std:c++17 /showIncludes /Folib\Transforms\InstCombine\CMakeFiles\LLVMInstCombine.dir\InstCombineSimplifyDemanded.cpp.obj /Fdlib\Transforms\InstCombine\CMakeFiles\LLVMInstCombine.dir\LLVMInstCombine.pdb -c -- C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\InstCombine\InstCombineSimplifyDemanded.cpp
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\InstCombine\InstCombineSimplifyDemanded.cpp(2659,15): error: no member named 'sqrt' in 'llvm::KnownFPClass'; did you mean simply 'sqrt'?
2659 |       Known = KnownFPClass::sqrt(KnownSrc, Mode);
|               ^~~~~~~~~~~~~~~~~~
|               sqrt
C:\BuildTools\VC\Tools\MSVC\14.29.30133\include\cmath(670,16): note: 'sqrt' declared here
670 | _GENERIC_MATH1(sqrt)
|                ^
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\InstCombine\InstCombineSimplifyDemanded.cpp(2659,15): error: no matching function for call to 'sqrt'
2659 |       Known = KnownFPClass::sqrt(KnownSrc, Mode);
|               ^~~~~~~~~~~~~~~~~~
C:\BuildTools\VC\Tools\MSVC\14.29.30133\include\cmath(670,16): note: candidate function template not viable: requires single argument '_Left', but 2 arguments were provided
670 | _GENERIC_MATH1(sqrt)
| ~~~~~~~~~~~~~~~^~~~~
C:\BuildTools\VC\Tools\MSVC\14.29.30133\include\cmath(602,51): note: expanded from macro '_GENERIC_MATH1'
602 | #define _GENERIC_MATH1(FUN)       _GENERIC_MATH1R(FUN, double)
|                                   ~~~~~~~~~~~~~~~~^~~~~~~~~~~~
C:\BuildTools\VC\Tools\MSVC\14.29.30133\include\cmath(601,55): note: expanded from macro '_GENERIC_MATH1R'
601 | #define _GENERIC_MATH1R(FUN, RET) _GENERIC_MATH1_BASE(FUN, RET, _CSTD FUN)
|                                   ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
C:\BuildTools\VC\Tools\MSVC\14.29.30133\include\cmath(597,20): note: expanded from macro '_GENERIC_MATH1_BASE'
597 |     _NODISCARD RET NAME(_Ty _Left) noexcept /* strengthened */ {             \
|                    ^    ~~~~~~~~~
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\InstCombine\InstCombineSimplifyDemanded.cpp(2659,13): error: no viable overloaded '='
2659 |       Known = KnownFPClass::sqrt(KnownSrc, Mode);
|       ~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\llvm\include\llvm/Support/KnownFPClass.h(25,8): note: candidate function (the implicit copy assignment operator) not viable: no known conversion from 'double' to 'const KnownFPClass' for 1st argument
25 | struct KnownFPClass {
|        ^~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\llvm\include\llvm/Support/KnownFPClass.h(25,8): note: candidate function (the implicit move assignment operator) not viable: no known conversion from 'double' to 'KnownFPClass' for 1st argument
25 | struct KnownFPClass {
|        ^~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\llvm\lib\Transforms\InstCombine\InstCombineSimplifyDemanded.cpp(2722,29): error: no member named 'roundToIntegral' in 'llvm::KnownFPClass'
2722 |       Known = KnownFPClass::roundToIntegral(KnownSrc, IID == Intrinsic::trunc,
|                             ^~~~~~~~~~~~~~~
4 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/175421


More information about the llvm-branch-commits mailing list