[all-commits] [llvm/llvm-project] e657c8: [WebAssembly] Use v128.const instead of splats for...

Thomas Lively via All-commits all-commits at lists.llvm.org
Mon Apr 19 12:44:24 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e657c84fa10e36ccf9b36bfeba26219ffbb39773
      https://github.com/llvm/llvm-project/commit/e657c84fa10e36ccf9b36bfeba26219ffbb39773
  Author: Thomas Lively <tlively at google.com>
  Date:   2021-04-19 (Mon, 19 Apr 2021)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
    M llvm/test/CodeGen/WebAssembly/implicit-def.ll
    M llvm/test/CodeGen/WebAssembly/simd-offset.ll

  Log Message:
  -----------
  [WebAssembly] Use v128.const instead of splats for constants

We previously used splats instead of v128.const to materialize vector constants
because V8 did not support v128.const. Now that V8 supports v128.const, we can
use v128.const instead. Although this increases code size, it should also
increase performance (or at least require fewer engine-side optimizations), so
it is an appropriate change to make.

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




More information about the All-commits mailing list