[all-commits] [llvm/llvm-project] ecb2e5: [WebAssembly] Implement v128.select

Thomas Lively via All-commits all-commits at lists.llvm.org
Thu Jul 16 11:37:48 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: ecb2e5bcd7e616f62a8c61722ee8d4033c78e32e
      https://github.com/llvm/llvm-project/commit/ecb2e5bcd7e616f62a8c61722ee8d4033c78e32e
  Author: Thomas Lively <tlively at google.com>
  Date:   2020-07-16 (Thu, 16 Jul 2020)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/test/CodeGen/WebAssembly/simd-select.ll

  Log Message:
  -----------
  [WebAssembly] Implement v128.select

Although the SIMD spec proposal does not specifically include a
select instruction, the select instruction in MVP WebAssembly is
polymorphic over the selected types, so it is able to work on v128
values when they are enabled. This patch introduces a new variant of
the select instruction for each legal vector type. Additional ISel
patterns are adapted from the SELECT_I32 and SELECT_I64 patterns.

Depends on D83736.

Differential Revision: https://reviews.llvm.org/D83737




More information about the All-commits mailing list