[all-commits] [llvm/llvm-project] df7897: InstCombine: Fold is.fpclass(x, fcZero) to fcmp oeq 0

Matt Arsenault via All-commits all-commits at lists.llvm.org
Wed Feb 15 01:21:15 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: df78976d023a6b7fcf64bc695261b7b402fcede0
      https://github.com/llvm/llvm-project/commit/df78976d023a6b7fcf64bc695261b7b402fcede0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2023-02-15 (Wed, 15 Feb 2023)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/is_fpclass.ll

  Log Message:
  -----------
  InstCombine: Fold is.fpclass(x, fcZero) to fcmp oeq 0

This requires the denormal mode to definitively be IEEE handling.


  Commit: a4e8347b36617ed81accbf5c5fb3b532db941f4f
      https://github.com/llvm/llvm-project/commit/a4e8347b36617ed81accbf5c5fb3b532db941f4f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2023-02-15 (Wed, 15 Feb 2023)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h

  Log Message:
  -----------
  AMDGPU: Refactor isConstantCostlierToNegate


  Commit: 11c3cead23783e65fb30e673d62771352078ff05
      https://github.com/llvm/llvm-project/commit/11c3cead23783e65fb30e673d62771352078ff05
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2023-02-15 (Wed, 15 Feb 2023)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/fdiv32-to-rcp-folding.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
    M llvm/test/CodeGen/AMDGPU/v_pack.ll

  Log Message:
  -----------
  AMDGPU: Override getNegatedExpression constant handling

Ignore the multiple use heuristics of the default
implementation, and report cost based on inline immediates. This
is mostly interesting for -0 vs. 0. Gets a few small improvements.
fneg_fadd_0_f16 is a small regression. We could probably avoid this
if we handled folding fneg into div_fixup.


Compare: https://github.com/llvm/llvm-project/compare/8f7e7400b74b...11c3cead2378


More information about the All-commits mailing list