[PATCH] D128865: [AMDGPU] Make v16i16/v16f16 legal

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 29 17:28:39 PDT 2022


arsenm added inline comments.


================
Comment at: llvm/test/Analysis/CostModel/AMDGPU/arith-usat.ll:118
 ; FAST-SIZE-NEXT:  Cost Model: Found an estimated cost of 32 for instruction: %V16I16 = call <16 x i16> @llvm.uadd.sat.v16i16(<16 x i16> undef, <16 x i16> undef)
-; FAST-SIZE-NEXT:  Cost Model: Found an estimated cost of 96 for instruction: %V17I16 = call <17 x i16> @llvm.uadd.sat.v17i16(<17 x i16> undef, <17 x i16> undef)
-; FAST-SIZE-NEXT:  Cost Model: Found an estimated cost of 96 for instruction: %V32I16 = call <32 x i16> @llvm.uadd.sat.v32i16(<32 x i16> undef, <32 x i16> undef)
+; FAST-SIZE-NEXT:  Cost Model: Found an estimated cost of 128 for instruction: %V17I16 = call <17 x i16> @llvm.uadd.sat.v17i16(<17 x i16> undef, <17 x i16> undef)
+; FAST-SIZE-NEXT:  Cost Model: Found an estimated cost of 128 for instruction: %V32I16 = call <32 x i16> @llvm.uadd.sat.v32i16(<32 x i16> undef, <32 x i16> undef)
----------------
Don’t understand why this happened but it’s not really important 


================
Comment at: llvm/test/CodeGen/AMDGPU/inlineasm-illegal-type.ll:23
 ; GCN: error: couldn't allocate input reg for constraint 's'
-define amdgpu_kernel void @s_input_output_v16f16() {
-  %v = tail call <16 x half> asm sideeffect "s_mov_b32 $0, -1", "=s"()
-  tail call void asm sideeffect "; use $0", "s"(<16 x half> %v)
+define amdgpu_kernel void @s_input_output_v32f16() {
+  %v = tail call <32 x half> asm sideeffect "s_mov_b32 $0, -1", "=s"()
----------------
Should retain this in one of the working asm tests 


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D128865



More information about the llvm-commits mailing list