[llvm] [LLVM][MC][DecoderEmitter] Add support to specialize decoder per bitwidth (PR #154865)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 1 18:13:59 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `ppc64le-lld-multistage-test` running on `ppc64le-lld-multistage-test` while building `llvm` at step 6 "build-stage1-unified-tree".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/168/builds/15779

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 6 (build-stage1-unified-tree) failure: build (failure)
...
115.158 [912/20/5742] Linking CXX executable unittests/Target/AArch64/AArch64Tests
115.208 [912/19/5743] Building AMDGPUGenMCPseudoLowering.inc...
115.354 [912/18/5744] Building AMDGPUGenPostLegalizeGICombiner.inc...
115.886 [912/17/5745] Building AMDGPUGenRegBankGICombiner.inc...
116.533 [912/16/5746] Linking CXX executable unittests/Target/X86/X86Tests
116.708 [912/15/5747] Building AMDGPUGenDisassemblerTables.inc...
116.913 [912/14/5748] Building AMDGPUGenMCCodeEmitter.inc...
117.509 [912/13/5749] Linking CXX executable bin/clang-import-test
117.709 [912/12/5750] Building AMDGPUGenSearchableTables.inc...
118.543 [912/11/5751] Building CXX object lib/Target/RISCV/Disassembler/CMakeFiles/LLVMRISCVDisassembler.dir/RISCVDisassembler.cpp.o
FAILED: lib/Target/RISCV/Disassembler/CMakeFiles/LLVMRISCVDisassembler.dir/RISCVDisassembler.cpp.o 
ccache /usr/lib64/ccache/c++ -DGTEST_HAS_RTTI=0 -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/build/stage1/lib/Target/RISCV/Disassembler -I/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/llvm-project/llvm/lib/Target/RISCV/Disassembler -I/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/llvm-project/llvm/lib/Target/RISCV -I/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/build/stage1/lib/Target/RISCV -I/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/build/stage1/include -I/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/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-noexcept-type -Wdelete-non-virtual-dtor -Wno-comment -Wno-misleading-indentation -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -std=c++17 -fvisibility=hidden  -fno-exceptions -funwind-tables -fno-rtti -UNDEBUG -MD -MT lib/Target/RISCV/Disassembler/CMakeFiles/LLVMRISCVDisassembler.dir/RISCVDisassembler.cpp.o -MF lib/Target/RISCV/Disassembler/CMakeFiles/LLVMRISCVDisassembler.dir/RISCVDisassembler.cpp.o.d -o lib/Target/RISCV/Disassembler/CMakeFiles/LLVMRISCVDisassembler.dir/RISCVDisassembler.cpp.o -c /home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/llvm-project/llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/llvm-project/llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp:705:13: error: explicit template specialization cannot have a storage class
 template <> static constexpr uint32_t llvm::MCD::InsnBitWidth<uint16_t> = 16;
             ^~~~~~
/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/llvm-project/llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp:706:13: error: explicit template specialization cannot have a storage class
 template <> static constexpr uint32_t llvm::MCD::InsnBitWidth<uint32_t> = 32;
             ^~~~~~
/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/llvm-project/llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp:708:13: error: explicit template specialization cannot have a storage class
 template <> static constexpr uint32_t llvm::MCD::InsnBitWidth<uint64_t> = 48;
             ^~~~~~
119.314 [912/10/5752] Building AMDGPUGenAsmWriter.inc...
120.711 [912/9/5753] Building CXX object lib/Target/ARM/Disassembler/CMakeFiles/LLVMARMDisassembler.dir/ARMDisassembler.cpp.o
120.881 [912/8/5754] Linking CXX executable unittests/Target/RISCV/RISCVTests
121.799 [912/7/5755] Building AMDGPUGenInstrInfo.inc...
121.885 [912/6/5756] Building AMDGPUGenGlobalISel.inc...
122.421 [912/5/5757] Building AMDGPUGenAsmMatcher.inc...
123.018 [912/4/5758] Building AMDGPUGenDAGISel.inc...
125.100 [912/3/5759] Building CXX object lib/Target/AArch64/Disassembler/CMakeFiles/LLVMAArch64Disassembler.dir/AArch64Disassembler.cpp.o
126.830 [912/2/5760] Building AMDGPUGenRegisterBank.inc...
126.952 [912/1/5761] Building AMDGPUGenRegisterInfo.inc...
ninja: build stopped: subcommand failed.

```

</details>

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


More information about the llvm-commits mailing list