[llvm-branch-commits] [JTS] Drop test for multiple zero values in VP metadata (PR #197617)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed May 13 21:47:26 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-llvm-transforms
Author: Aiden Grossman (boomanaiden154)
<details>
<summary>Changes</summary>
This will soon become a verifier failure. Drop the test so that we can
actually enforce this in the verifier without causing test failures.
---
Full diff: https://github.com/llvm/llvm-project/pull/197617.diff
1 Files Affected:
- (modified) llvm/test/Transforms/JumpTableToSwitch/profile-no-guid-metadata.ll (+4-38)
``````````diff
diff --git a/llvm/test/Transforms/JumpTableToSwitch/profile-no-guid-metadata.ll b/llvm/test/Transforms/JumpTableToSwitch/profile-no-guid-metadata.ll
index a301c03b9be0d..3c902e36224dc 100644
--- a/llvm/test/Transforms/JumpTableToSwitch/profile-no-guid-metadata.ll
+++ b/llvm/test/Transforms/JumpTableToSwitch/profile-no-guid-metadata.ll
@@ -52,36 +52,6 @@ define i32 @caller(i32 %idx) {
ret i32 %r
}
-;; Test that multiple 0 GUIDs in value profile data don't cause an assertion
-;; failure. We can end up with multiple zero GUIDs due to the profile loader
-;; failing to find a function mapping for multiple addresses.
-define i32 @caller_dup_guid(i32 %idx) {
-; CHECK-LABEL: define i32 @caller_dup_guid(
-; CHECK-SAME: i32 [[IDX:%.*]]) {
-; CHECK-NEXT: [[GEP:%.*]] = getelementptr inbounds [2 x ptr], ptr @jt, i32 0, i32 [[IDX]]
-; CHECK-NEXT: [[FPTR:%.*]] = load ptr, ptr [[GEP]], align 8
-; CHECK-NEXT: switch i32 [[IDX]], label %[[DEFAULT_SWITCH_CASE_UNREACHABLE:.*]] [
-; CHECK-NEXT: i32 0, label %[[CALL_0:.*]]
-; CHECK-NEXT: i32 1, label %[[CALL_1:.*]]
-; CHECK-NEXT: ], !prof [[PROF1:![0-9]+]]
-; CHECK: [[DEFAULT_SWITCH_CASE_UNREACHABLE]]:
-; CHECK-NEXT: unreachable
-; CHECK: [[CALL_0]]:
-; CHECK-NEXT: [[TMP1:%.*]] = call i32 @jt_target_0()
-; CHECK-NEXT: br [[DOTTAIL:label %.*]]
-; CHECK: [[CALL_1]]:
-; CHECK-NEXT: [[TMP2:%.*]] = call i32 @jt_target_1()
-; CHECK-NEXT: br [[DOTTAIL]]
-; CHECK: [[_TAIL:.*:]]
-; CHECK-NEXT: [[TMP3:%.*]] = phi i32 [ [[TMP1]], %[[CALL_0]] ], [ [[TMP2]], %[[CALL_1]] ]
-; CHECK-NEXT: ret i32 [[TMP3]]
-;
- %gep = getelementptr inbounds [2 x ptr], ptr @jt, i32 0, i32 %idx
- %fptr = load ptr, ptr %gep
- %r = call i32 %fptr(), !prof !1
- ret i32 %r
-}
-
define i32 @caller_only_zero_guids(i32 %idx) {
; CHECK-LABEL: define i32 @caller_only_zero_guids(
; CHECK-SAME: i32 [[IDX:%.*]]) {
@@ -90,7 +60,7 @@ define i32 @caller_only_zero_guids(i32 %idx) {
; CHECK-NEXT: switch i32 [[IDX]], label %[[DEFAULT_SWITCH_CASE_UNREACHABLE:.*]] [
; CHECK-NEXT: i32 0, label %[[CALL_0:.*]]
; CHECK-NEXT: i32 1, label %[[CALL_1:.*]]
-; CHECK-NEXT: ], !prof [[PROF2:![0-9]+]]
+; CHECK-NEXT: ], !prof [[PROF1:![0-9]+]]
; CHECK: [[DEFAULT_SWITCH_CASE_UNREACHABLE]]:
; CHECK-NEXT: unreachable
; CHECK: [[CALL_0]]:
@@ -105,7 +75,7 @@ define i32 @caller_only_zero_guids(i32 %idx) {
;
%gep = getelementptr inbounds [2 x ptr], ptr @jt, i32 0, i32 %idx
%fptr = load ptr, ptr %gep
- %r = call i32 %fptr(), !prof !2
+ %r = call i32 %fptr(), !prof !1
ret i32 %r
}
@@ -113,14 +83,10 @@ define i32 @caller_only_zero_guids(i32 %idx) {
;; GUID 18156790114353049777 = MD5("jt_target_1"), count 50
!0 = !{!"VP", i32 0, i64 150, i64 11912887233601027218, i64 100, i64 18156790114353049777, i64 50}
-;; VP metadata with multiple zero values.
-!1 = !{!"VP", i32 0, i64 150, i64 11912887233601027218, i64 60, i64 0, i64 50, i64 0, i64 40}
-
;; VP metadata with only a zero value.
-!2 = !{!"VP", i32 0, i64 150, i64 0, i64 40}
+!1 = !{!"VP", i32 0, i64 150, i64 0, i64 40}
;.
; CHECK: [[PROF0]] = !{!"branch_weights", i32 0, i32 100, i32 50}
-; CHECK: [[PROF1]] = !{!"branch_weights", i32 0, i32 60, i32 0}
-; CHECK: [[PROF2]] = !{!"unknown", !"jump-table-to-switch"}
+; CHECK: [[PROF1]] = !{!"unknown", !"jump-table-to-switch"}
;.
``````````
</details>
https://github.com/llvm/llvm-project/pull/197617
More information about the llvm-branch-commits
mailing list