[all-commits] [llvm/llvm-project] 5ac3ce: [WebAssembly] Fix inline assembly with vector type...

Alex Crichton via All-commits all-commits at lists.llvm.org
Mon Jul 7 16:53:56 PDT 2025


  Branch: refs/heads/release/20.x
  Home:   https://github.com/llvm/llvm-project
  Commit: 5ac3ce8196886f245cdaa58e87036e19e7857081
      https://github.com/llvm/llvm-project/commit/5ac3ce8196886f245cdaa58e87036e19e7857081
  Author: Alex Crichton <alex at alexcrichton.com>
  Date:   2025-07-07 (Mon, 07 Jul 2025)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.td
    M llvm/test/CodeGen/WebAssembly/inline-asm.ll

  Log Message:
  -----------
  [WebAssembly] Fix inline assembly with vector types (#146574)

This commit fixes using inline assembly with v128 results. Previously
this failed with an internal assertion about a failure to legalize a
`CopyFromReg` where the source register was typed `v8f16`. It looks like
the type used for the destination register was whatever was listed first
in the `def V128 : WebAssemblyRegClass` listing, so the types were
shuffled around to have a default-supported type.

A small test was added as well which failed to generate previously and
should now pass in generation. This test passed on LLVM 18 additionally
and regressed by accident in #93228 which was first included in LLVM 19.

(cherry picked from commit a8a9a7f95a695c02bdf3d5821d1c62cc8e08c2ff)



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