[all-commits] [llvm/llvm-project] 0c7300: [WebAssembly] TableGen-erate SDNode descriptions (...

Sergei Barannikov via All-commits all-commits at lists.llvm.org
Tue Nov 4 19:25:14 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0c73009236384033fc65be4fefb3c3b9b0d19c77
      https://github.com/llvm/llvm-project/commit/0c73009236384033fc65be4fefb3c3b9b0d19c77
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-11-05 (Wed, 05 Nov 2025)

  Changed paths:
    M llvm/lib/Target/WebAssembly/CMakeLists.txt
    R llvm/lib/Target/WebAssembly/WebAssemblyISD.def
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.h

  Log Message:
  -----------
  [WebAssembly] TableGen-erate SDNode descriptions (#166259)

This allows SDNodes to be validated against their expected type profiles
and reduces the number of changes required to add a new node.

CALL and RET_CALL do not have a description in td files, and it is not
currently possible to add one as these nodes have both variable operands
and variable results.

This also fixes a subtle bug detected by the enabled verification
functionality. `LOCAL_GET` is declared with `SDNPHasChain` property, and
thus should have both a chain operand and a chain result. The original
code created a node without a chain result, which caused a check in
`SDNodeInfo::verifyNode()` to fail.

Part of #119709.

Pull Request: https://github.com/llvm/llvm-project/pull/166259



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list