[all-commits] [llvm/llvm-project] 3701eb: AtomicExpand: Fix expanding atomics into unconstra...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Tue Jul 11 15:58:56 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3701ebe76b998a55993f605c2fb323c25cc0086b
      https://github.com/llvm/llvm-project/commit/3701ebe76b998a55993f605c2fb323c25cc0086b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2023-07-11 (Tue, 11 Jul 2023)

  Changed paths:
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/Transforms/Utils/LowerAtomic.cpp
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmax.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmin.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fsub.ll

  Log Message:
  -----------
  AtomicExpand: Fix expanding atomics into unconstrained FP in strictfp functions

Ideally the normal fadd/fmin/fmax this was creating would fail the verifier.
It's probably also necessary to force off FP exception handlers in the cmpxchg
loop but we don't have a generic way to do that now.

Note strictfp builder is broken in the minnum/maxnum case

https://reviews.llvm.org/D154993


  Commit: 14c3ab945be9c49964dbf79f13d8ff8df1ff7b72
      https://github.com/llvm/llvm-project/commit/14c3ab945be9c49964dbf79f13d8ff8df1ff7b72
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2023-07-11 (Tue, 11 Jul 2023)

  Changed paths:
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmax.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmin.ll

  Log Message:
  -----------
  IRBuilder: Fix not handling strictfp minnum/maxnum

Removing the rounding mode arguments seems like more trouble than
it's worth. minimum and maximum are still broken.

https://reviews.llvm.org/D154994


Compare: https://github.com/llvm/llvm-project/compare/b59022b42e0b...14c3ab945be9


More information about the All-commits mailing list