[all-commits] [llvm/llvm-project] 9b27d1: [RISCV] Disable constant hoisting for multiply by ...

Craig Topper via All-commits all-commits at lists.llvm.org
Wed Jul 27 09:38:49 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9b27d13204969bfb57ef408ec2c95e5b1f63fc43
      https://github.com/llvm/llvm-project/commit/9b27d13204969bfb57ef408ec2c95e5b1f63fc43
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2022-07-27 (Wed, 27 Jul 2022)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Transforms/ConstantHoisting/RISCV/immediates.ll

  Log Message:
  -----------
  [RISCV] Disable constant hoisting for multiply by negated power of 2.

A mul by a negated power of 2 is a slli followed by neg. This doesn't
require any constant materialization and may be lower latency than mul.
The neg may also be foldable into other arithmetic.

Reviewed By: reames

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




More information about the All-commits mailing list