[all-commits] [llvm/llvm-project] 9d81cc: [WebAssembly] Enable loop unrolling

Sam Parker via All-commits all-commits at lists.llvm.org
Wed Feb 10 00:26:58 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9d81ccc02ffb154cd5ee7ade21740dc4a45f4261
      https://github.com/llvm/llvm-project/commit/9d81ccc02ffb154cd5ee7ade21740dc4a45f4261
  Author: Sam Parker <sam.parker at arm.com>
  Date:   2021-02-10 (Wed, 10 Feb 2021)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    A llvm/test/Transforms/LoopUnroll/WebAssembly/basic-unrolling.ll
    A llvm/test/Transforms/LoopUnroll/WebAssembly/lit.local.cfg

  Log Message:
  -----------
  [WebAssembly] Enable loop unrolling

Enable partial and runtime unrolling with a threshold of 30, which
was derived from a large number of kernels running on node and
wasmtime for amd64 and aarch64.

Unrolling is enabled by default at -O2 and -O3 and is disabled at
-Oz and -Os. Compiling with -Os is recommended if the wasm binary
size is the most important factor.

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




More information about the All-commits mailing list