[PATCH] D117032: GlobalIsel: Fix fma combine when one of the uses comes from unmerge

Petar Avramovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 11 09:05:33 PST 2022


Petar.Avramovic added a comment.

TODO: do the same for remaining fma combines.



================
Comment at: llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul-post-legalize.mir:222
-    ; GFX9-CONTRACT-NEXT: [[BITCAST:%[0-9]+]]:_(s64) = G_BITCAST [[LOAD]](<2 x s32>)
-    ; GFX9-CONTRACT-NEXT: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[BITCAST]](s64)
-    ; GFX9-CONTRACT-NEXT: [[FMA:%[0-9]+]]:_(s32) = G_FMA [[COPY]], [[COPY1]], [[TRUNC]]
----------------
This is element 0


================
Comment at: llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul-post-legalize.mir:222
+    ; GFX9-CONTRACT-NEXT: [[UV:%[0-9]+]]:_(s32), [[UV1:%[0-9]+]]:_(s32) = G_UNMERGE_VALUES [[LOAD]](<2 x s32>)
+    ; GFX9-CONTRACT-NEXT: [[FMA:%[0-9]+]]:_(s32) = G_FMA [[COPY]], [[COPY1]], [[UV1]]
     ; GFX9-CONTRACT-NEXT: $vgpr0 = COPY [[FMA]](s32)
----------------
Petar.Avramovic wrote:
> This is element 0
but it should be element 1


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

https://reviews.llvm.org/D117032



More information about the llvm-commits mailing list