[all-commits] [llvm/llvm-project] a107cf: [AArch64][InstCombine] Fuse ADD+MUL and SUB+MUL AA...

Matthew Devereau via All-commits all-commits at lists.llvm.org
Thu Dec 22 01:56:50 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a107cf0c407f418fafce60539b42114fe68fd737
      https://github.com/llvm/llvm-project/commit/a107cf0c407f418fafce60539b42114fe68fd737
  Author: Matt Devereau <matthew.devereau at arm.com>
  Date:   2022-12-22 (Thu, 22 Dec 2022)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-muladd.ll
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-muladdsub.ll

  Log Message:
  -----------
  [AArch64][InstCombine] Fuse ADD+MUL and SUB+MUL AArch64 instrinsics

Fold (ADD p c (MUL p a b)) into (MAD p a b c)
Fold (FADD p c (FMUL p a b)) into (FMAD p a b c)
Fold (FSUB p c (FMUL p a b)) into (FNMSB p a b c)

Fold (ADD p (MUL p a b) c) into (MLA p c a b)
Fold (FADD p (FMUL p a b) c) into (FMLA p c a b)
Fold (SUB p (MUL p a b) C) into (MLS p c a b)
Fold (FSUB p (FMUL p a b) c) into (FMLS p c a b)

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




More information about the All-commits mailing list