Skip to content

AMDGPU: Use generated checks in unchecked test #131275

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

arsenm
Copy link
Contributor

@arsenm arsenm commented Mar 14, 2025

Also replace undef uses

Copy link
Contributor Author

arsenm commented Mar 14, 2025

This stack of pull requests is managed by Graphite. Learn more about stacking.

@llvmbot
Copy link
Member

llvmbot commented Mar 14, 2025

@llvm/pr-subscribers-llvm-globalisel

@llvm/pr-subscribers-backend-amdgpu

Author: Matt Arsenault (arsenm)

Changes

Also replace undef uses


Full diff: https://github.com/llvm/llvm-project/pull/131275.diff

1 Files Affected:

  • (modified) llvm/test/CodeGen/AMDGPU/vector-legalizer-divergence.ll (+21-4)
diff --git a/llvm/test/CodeGen/AMDGPU/vector-legalizer-divergence.ll b/llvm/test/CodeGen/AMDGPU/vector-legalizer-divergence.ll
index 1daba85ae0122..bb0b661e800c3 100644
--- a/llvm/test/CodeGen/AMDGPU/vector-legalizer-divergence.ll
+++ b/llvm/test/CodeGen/AMDGPU/vector-legalizer-divergence.ll
@@ -1,4 +1,5 @@
-; RUN: llc -mtriple=amdgcn < %s
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5
+; RUN: llc -mtriple=amdgcn < %s | FileCheck %s
 
 ; Tests for a bug in SelectionDAG::UpdateNodeOperands exposed by VectorLegalizer
 ; where divergence information is not updated.
@@ -6,21 +7,37 @@
 declare i32 @llvm.amdgcn.workitem.id.x()
 
 define amdgpu_kernel void @spam(ptr addrspace(1) noalias %arg) {
+; CHECK-LABEL: spam:
+; CHECK:       ; %bb.0:
+; CHECK-NEXT:    s_load_dwordx2 s[0:1], s[4:5], 0x9
+; CHECK-NEXT:    v_lshlrev_b32_e32 v4, 3, v0
+; CHECK-NEXT:    v_mov_b32_e32 v5, 0
+; CHECK-NEXT:    s_mov_b32 s3, 0xf000
+; CHECK-NEXT:    s_mov_b32 s2, 0
+; CHECK-NEXT:    v_mov_b32_e32 v1, 0x7ff80000
+; CHECK-NEXT:    v_mov_b32_e32 v0, v5
+; CHECK-NEXT:    s_waitcnt lgkmcnt(0)
+; CHECK-NEXT:    buffer_store_dwordx4 v[0:3], v[4:5], s[0:3], 0 addr64 offset:16
+; CHECK-NEXT:    s_waitcnt expcnt(0)
+; CHECK-NEXT:    v_mov_b32_e32 v2, v5
+; CHECK-NEXT:    v_mov_b32_e32 v3, v5
+; CHECK-NEXT:    buffer_store_dwordx4 v[0:3], v[4:5], s[0:3], 0 addr64 offset:48
+; CHECK-NEXT:    s_endpgm
   %tmp = tail call i32 @llvm.amdgcn.workitem.id.x()
   %tmp1 = zext i32 %tmp to i64
   %tmp2 = getelementptr inbounds double, ptr addrspace(1) %arg, i64 %tmp1
   %tmp3 = load double, ptr addrspace(1) %tmp2, align 8
-  %tmp4 = fadd double undef, 0.000000e+00
+  %tmp4 = fadd double 0x7FF8000000000000, 0.000000e+00
   %tmp5 = insertelement <2 x double> poison, double %tmp4, i64 0
   %tmp6 = insertelement <2 x double> %tmp5, double %tmp3, i64 1
   %tmp7 = insertelement <2 x double> %tmp6, double 0.000000e+00, i64 1
-  %tmp8 = fadd <2 x double> zeroinitializer, undef
+  %tmp8 = fadd <2 x double> zeroinitializer, splat (double 0x7FF8000000000000)
   %tmp9 = fadd <2 x double> %tmp7, zeroinitializer
   %tmp10 = extractelement <2 x double> %tmp8, i64 0
   %tmp11 = getelementptr inbounds double, ptr addrspace(1) %tmp2, i64 2
   store double %tmp10, ptr addrspace(1) %tmp11, align 8
   %tmp12 = getelementptr inbounds double, ptr addrspace(1) %tmp2, i64 3
-  store double undef, ptr addrspace(1) %tmp12, align 8
+  store double poison, ptr addrspace(1) %tmp12, align 8
   %tmp13 = extractelement <2 x double> %tmp9, i64 0
   %tmp14 = getelementptr inbounds double, ptr addrspace(1) %tmp2, i64 6
   store double %tmp13, ptr addrspace(1) %tmp14, align 8

@arsenm arsenm force-pushed the users/arsenm/amdgpu/use-generated-checks-reg-coalescer-sched-crash branch from 494add8 to 1907a9f Compare March 14, 2025 07:56
@arsenm arsenm force-pushed the users/arsenm/amdgpu/generate-checks-vector-legalizer-divergence branch from 178ebf5 to 54435ee Compare March 14, 2025 07:57
@arsenm arsenm force-pushed the users/arsenm/amdgpu/use-generated-checks-reg-coalescer-sched-crash branch from 1907a9f to 71c8ed8 Compare March 14, 2025 09:02
Base automatically changed from users/arsenm/amdgpu/use-generated-checks-reg-coalescer-sched-crash to main March 14, 2025 09:04
@arsenm arsenm force-pushed the users/arsenm/amdgpu/generate-checks-vector-legalizer-divergence branch from 54435ee to 4dd02c4 Compare March 14, 2025 09:06
Copy link
Contributor Author

arsenm commented Mar 14, 2025

Merge activity

  • Mar 14, 7:10 AM EDT: A user started a stack merge that includes this pull request via Graphite.
  • Mar 14, 7:11 AM EDT: Graphite rebased this pull request as part of a merge.
  • Mar 14, 7:13 AM EDT: Graphite rebased this pull request as part of a merge.
  • Mar 14, 7:16 AM EDT: Graphite rebased this pull request as part of a merge.
  • Mar 14, 7:18 AM EDT: A user merged this pull request with Graphite.

@arsenm arsenm force-pushed the users/arsenm/amdgpu/generate-checks-vector-legalizer-divergence branch 2 times, most recently from 13d1b3b to c45231e Compare March 14, 2025 11:13
@arsenm arsenm force-pushed the users/arsenm/amdgpu/generate-checks-vector-legalizer-divergence branch from c45231e to cdfaaf9 Compare March 14, 2025 11:15
@arsenm arsenm merged commit a9843ac into main Mar 14, 2025
6 of 10 checks passed
@arsenm arsenm deleted the users/arsenm/amdgpu/generate-checks-vector-legalizer-divergence branch March 14, 2025 11:18
frederik-h pushed a commit to frederik-h/llvm-project that referenced this pull request Mar 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants