[all-commits] [llvm/llvm-project] 47232b: [mlir][spirv] Fix extended umul expansion for WebGPU

Jakub Kuderski via All-commits all-commits at lists.llvm.org
Thu Jan 5 15:42:05 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 47232bea9e5ecc5ad999f53ec2895d2c07427572
      https://github.com/llvm/llvm-project/commit/47232bea9e5ecc5ad999f53ec2895d2c07427572
  Author: Jakub Kuderski <kubak at google.com>
  Date:   2023-01-05 (Thu, 05 Jan 2023)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/Transforms/SPIRVWebGPUTransforms.cpp
    M mlir/test/Dialect/SPIRV/Transforms/webgpu-prepare.mlir
    A mlir/test/mlir-vulkan-runner/umul_extended.mlir
    M mlir/tools/mlir-vulkan-runner/CMakeLists.txt
    M mlir/tools/mlir-vulkan-runner/mlir-vulkan-runner.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][spirv] Fix extended umul expansion for WebGPU

Fix an off-by-one error in extended umul extension for WebGPU.
Revert to the long multiplication algorithm originally added to wide
integer emulation, which was deleted in D139776. It is much easier
to see why it is correct.

Add runtime tests based on the mlir-vulkan-runner. These run both with
and without umul extension.

Issue: https://github.com/llvm/llvm-project/issues/59563

Reviewed By: antiagainst

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




More information about the All-commits mailing list