[llvm] [AMDGPU] Model WMMA co-execution windows in the scheduler for gfx1250 (PR #204077)

Amy Kwan via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 17 10:03:42 PDT 2026


amy-kwan wrote:

> Hi, I have failed building LLVM using GCC 8.5 since this PR was merged. Is there any workaround other than using newer GCC? (This looks similar to [#192322 (review)](https://github.com/llvm/llvm-project/pull/192322#pullrequestreview-4446622734).)
> 
> ```
> [1/3618] Building CXX object lib/Target/AMDGPU/CMakeFiles/LLVMAMDGPUCodeGen.dir/AMDGPUCoExecSchedStrategy.cpp.o
> FAILED: [code=1] lib/Target/AMDGPU/CMakeFiles/LLVMAMDGPUCodeGen.dir/AMDGPUCoExecSchedStrategy.cpp.o
> /usr/bin/c++ -DLLVM_EXPORTS -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/path/to/build/llvm/lib/Target/AMDGPU -I/path/to/llvm-project/llvm/lib/Target/AMDGPU -I/path/to/build/llvm/include -I/path/to/llvm-project/llvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-array-bounds -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wno-comment -Wno-misleading-indentation -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -std=c++17 -fvisibility=hidden -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -MD -MT lib/Target/AMDGPU/CMakeFiles/LLVMAMDGPUCodeGen.dir/AMDGPUCoExecSchedStrategy.cpp.o -MF lib/Target/AMDGPU/CMakeFiles/LLVMAMDGPUCodeGen.dir/AMDGPUCoExecSchedStrategy.cpp.o.d -o lib/Target/AMDGPU/CMakeFiles/LLVMAMDGPUCodeGen.dir/AMDGPUCoExecSchedStrategy.cpp.o -c /path/to/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
> In file included from /path/to/llvm-project/llvm/include/llvm/ADT/Hashing.h:49,
>                  from /path/to/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:12,
>                  from /path/to/llvm-project/llvm/include/llvm/MC/MCInst.h:18,
>                  from /path/to/llvm-project/llvm/lib/Target/AMDGPU/SIDefines.h:13,
>                  from /path/to/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUCoExecInfo.h:27,
>                  from /path/to/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h:17,
>                  from /path/to/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp:1:
> /path/to/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUCoExecInfo.h: In function 'constexpr llvm::StringRef llvm::AMDGPU::getFlavorName(llvm::AMDGPU::InstructionFlavor)':
> /path/to/llvm-project/llvm/include/llvm/Support/ErrorHandling.h:165:36: error: call to non-'constexpr' function 'void llvm::llvm_unreachable_internal(const char*, const char*, unsigned int)'
>    ::llvm::llvm_unreachable_internal(msg, __FILE__, __LINE__)
>    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
> /path/to/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUCoExecInfo.h:121: note: in expansion of macro 'llvm_unreachable'
>    llvm_unreachable("Unknown InstructionFlavor");
> 
> /path/to/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUCoExecInfo.h: In function 'constexpr llvm::AMDGPU::CoExecMaskT llvm::AMDGPU::getCoExecMask(llvm::AMDGPU::InstructionFlavor)':
> /path/to/llvm-project/llvm/include/llvm/Support/ErrorHandling.h:165:36: error: call to non-'constexpr' function 'void llvm::llvm_unreachable_internal(const char*, const char*, unsigned int)'
>    ::llvm::llvm_unreachable_internal(msg, __FILE__, __LINE__)
>    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
> /path/to/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUCoExecInfo.h:156: note: in expansion of macro 'llvm_unreachable'
>    llvm_unreachable("Unknown InstructionFlavor");
> ```

Same thing is happening on some of the PPC64LE bots, such as [clang-ppc64le-linux-multistage](https://lab.llvm.org/buildbot/#/builders/76).

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


More information about the llvm-commits mailing list