[PATCH] D138044: AMDGPU/GlobalISel: Fix crash after mad/fma_mix fails selection

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 16 10:00:12 PST 2022


arsenm added a comment.

In D138044#3931180 <https://reviews.llvm.org/D138044#3931180>, @Petar.Avramovic wrote:

> I did not understand last comment. What do I need to do exactly?
> Now selectVOP3PMadMixModsImpl (unchanged) is called when we know that fma/mad_mix will be selected.

Remove the special case getVOP3ModsImpl and FPEXT checks. Delete the copy build inside of selectVOP3ModsImpl, and move that code down to where the new instruction is constructed. You just need a new build copy to VGPR helper



================
Comment at: llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul.ll:173-174
+  %abs_x = call contract float @llvm.fabs.f32(float %x)
+  %a = fmul contract float %abs_x, %y
+  %b = fadd contract float %a, %z
+  ret float %b
----------------
Should pre-contract this 


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D138044/new/

https://reviews.llvm.org/D138044



More information about the llvm-commits mailing list