[all-commits] [llvm/llvm-project] 916ae0: [AMDGPU] Handle nnan and fast on the call in fpmed...

Justin Bogner via All-commits all-commits at lists.llvm.org
Tue Dec 6 23:17:19 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 916ae0a0604c409f5dbef2f1831af9edb8c26e62
      https://github.com/llvm/llvm-project/commit/916ae0a0604c409f5dbef2f1831af9edb8c26e62
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2022-12-06 (Tue, 06 Dec 2022)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.ll

  Log Message:
  -----------
  [AMDGPU] Handle nnan and fast on the call in fpmed3 patterns

We were only allowing these med3 patterns if the operands were known
to not be NaN, but we should also allow it if the calls to max/min
have the `nnan` or `fast` flags.

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


  Commit: bcfdaa96f539f0f0330b73e66e7296865e51a984
      https://github.com/llvm/llvm-project/commit/bcfdaa96f539f0f0330b73e66e7296865e51a984
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2022-12-06 (Tue, 06 Dec 2022)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.ll

  Log Message:
  -----------
  [AMDGPU] Handle `min(max(x, y), max(min(x, y), z))` in med3 combines

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


Compare: https://github.com/llvm/llvm-project/compare/f1353d2f1a7b...bcfdaa96f539


More information about the All-commits mailing list