[llvm] 99b4548 - [InstrProfiling] Generate test checks (NFC) (#226409)
via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 25 02:19:12 PDT 2026
Author: Nikita Popov
Date: 2026-09-25T11:19:04+02:00
New Revision: 99b454814e243b4d5f206d9605d3ab5b6e73f4b4
URL: https://github.com/llvm/llvm-project/commit/99b454814e243b4d5f206d9605d3ab5b6e73f4b4
DIFF: https://github.com/llvm/llvm-project/commit/99b454814e243b4d5f206d9605d3ab5b6e73f4b4.diff
LOG: [InstrProfiling] Generate test checks (NFC) (#226409)
Added:
Modified:
llvm/test/Instrumentation/InstrProfiling/conditional-counter-updates.ll
Removed:
################################################################################
diff --git a/llvm/test/Instrumentation/InstrProfiling/conditional-counter-updates.ll b/llvm/test/Instrumentation/InstrProfiling/conditional-counter-updates.ll
index 998443ec0cd56..d9d702d748280 100644
--- a/llvm/test/Instrumentation/InstrProfiling/conditional-counter-updates.ll
+++ b/llvm/test/Instrumentation/InstrProfiling/conditional-counter-updates.ll
@@ -1,3 +1,4 @@
+; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 6
; RUN: opt < %s -S -passes=instrprof -conditional-counter-update | FileCheck %s
target triple = "x86_64-unknown-linux-gnu"
@@ -5,45 +6,62 @@ target triple = "x86_64-unknown-linux-gnu"
@__profn_foo = private constant [3 x i8] c"foo"
@__profn_bar = private constant [3 x i8] c"bar"
-; CHECK-LABEL: define void @foo
-; CHECK-NEXT: %pgocount = load i8, ptr @__profc_foo, align 1
-; CHECK-NEXT: %pgocount.ifnonzero = icmp ne i8 %pgocount, 0
-; CHECK-NEXT: br i1 %pgocount.ifnonzero, label %1, label %2
-
-; CHECK-LABEL: 1:
-; CHECK-NEXT: store i8 0, ptr @__profc_foo, align 1
-; CHECK-NEXT: br label %2
-
-; CHECK-LABEL: 2:
-; CHECK-NEXT: ret void
define void @foo() {
+; CHECK-LABEL: define void @foo() {
+; CHECK-NEXT: [[PGOCOUNT:%.*]] = load i8, ptr @__profc_foo, align 1
+; CHECK-NEXT: [[PGOCOUNT_IFNONZERO:%.*]] = icmp ne i8 [[PGOCOUNT]], 0
+; CHECK-NEXT: br i1 [[PGOCOUNT_IFNONZERO]], label %[[BB1:.*]], label %[[BB2:.*]]
+; CHECK: [[BB1]]:
+; CHECK-NEXT: store i8 0, ptr @__profc_foo, align 1
+; CHECK-NEXT: br label %[[BB2]]
+; CHECK: [[BB2]]:
+; CHECK-NEXT: ret void
+;
call void @llvm.instrprof.cover(ptr @__profn_foo, i64 0, i32 1, i32 0)
ret void
}
-; CHECK-LABEL: define i32 @bar
-; CHECK-LABEL: entry:
-; CHECK-NEXT: %retval = alloca i32, align 4
-; CHECK-NEXT: %cond.addr = alloca i32, align 4
-; CHECK-NEXT: store i32 %cond, ptr %cond.addr, align 4
-; CHECK-NEXT: %pgocount = load i8, ptr @__profc_bar, align 1
-; CHECK-NEXT: %pgocount.ifnonzero = icmp ne i8 %pgocount, 0
-; CHECK-NEXT: br i1 %pgocount.ifnonzero, label %0, label %1
-
-; CHECK-LABEL: 0: ; preds = %entry
-; CHECK-NEXT: store i8 0, ptr @__profc_bar, align 1
-; CHECK-NEXT: br label %1
-
-; CHECK-LABEL: 1: ; preds = %entry, %0
-; CHECK-NEXT: %2 = load i32, ptr %cond.addr, align 4
-; CHECK-NEXT: %cmp = icmp slt i32 %2, 0
-; CHECK-NEXT: br i1 %cmp, label %if.then, label %if.end
-
-; CHECK-LABEL: if.then: ; preds = %1
-; CHECK-NEXT: %pgocount1 = load i8, ptr getelementptr inbounds ([3 x i8], ptr @__profc_bar, i32 0, i32 1), align 1
-; CHECK-NEXT: %pgocount.ifnonzero2 = icmp ne i8 %pgocount1, 0
-; CHECK-NEXT: br i1 %pgocount.ifnonzero2, label %3, label %4
define i32 @bar(i32 %cond) #0 {
+; CHECK-LABEL: define i32 @bar(
+; CHECK-SAME: i32 [[COND:%.*]]) {
+; CHECK-NEXT: [[ENTRY:.*:]]
+; CHECK-NEXT: [[RETVAL:%.*]] = alloca i32, align 4
+; CHECK-NEXT: [[COND_ADDR:%.*]] = alloca i32, align 4
+; CHECK-NEXT: store i32 [[COND]], ptr [[COND_ADDR]], align 4
+; CHECK-NEXT: [[PGOCOUNT:%.*]] = load i8, ptr @__profc_bar, align 1
+; CHECK-NEXT: [[PGOCOUNT_IFNONZERO:%.*]] = icmp ne i8 [[PGOCOUNT]], 0
+; CHECK-NEXT: br i1 [[PGOCOUNT_IFNONZERO]], label %[[BB0:.*]], label %[[BB1:.*]]
+; CHECK: [[BB0]]:
+; CHECK-NEXT: store i8 0, ptr @__profc_bar, align 1
+; CHECK-NEXT: br label %[[BB1]]
+; CHECK: [[BB1]]:
+; CHECK-NEXT: [[TMP2:%.*]] = load i32, ptr [[COND_ADDR]], align 4
+; CHECK-NEXT: [[CMP:%.*]] = icmp slt i32 [[TMP2]], 0
+; CHECK-NEXT: br i1 [[CMP]], label %[[IF_THEN:.*]], label %[[IF_END:.*]]
+; CHECK: [[IF_THEN]]:
+; CHECK-NEXT: [[PGOCOUNT1:%.*]] = load i8, ptr getelementptr inbounds ([3 x i8], ptr @__profc_bar, i32 0, i32 1), align 1
+; CHECK-NEXT: [[PGOCOUNT_IFNONZERO2:%.*]] = icmp ne i8 [[PGOCOUNT1]], 0
+; CHECK-NEXT: br i1 [[PGOCOUNT_IFNONZERO2]], label %[[BB3:.*]], label %[[BB4:.*]]
+; CHECK: [[BB3]]:
+; CHECK-NEXT: store i8 0, ptr getelementptr inbounds ([3 x i8], ptr @__profc_bar, i32 0, i32 1), align 1
+; CHECK-NEXT: br label %[[BB4]]
+; CHECK: [[BB4]]:
+; CHECK-NEXT: store i32 -1, ptr [[RETVAL]], align 4
+; CHECK-NEXT: br label %[[RETURN:.*]]
+; CHECK: [[IF_END]]:
+; CHECK-NEXT: [[PGOCOUNT3:%.*]] = load i8, ptr getelementptr inbounds ([3 x i8], ptr @__profc_bar, i32 0, i32 2), align 1
+; CHECK-NEXT: [[PGOCOUNT_IFNONZERO4:%.*]] = icmp ne i8 [[PGOCOUNT3]], 0
+; CHECK-NEXT: br i1 [[PGOCOUNT_IFNONZERO4]], label %[[BB5:.*]], label %[[BB6:.*]]
+; CHECK: [[BB5]]:
+; CHECK-NEXT: store i8 0, ptr getelementptr inbounds ([3 x i8], ptr @__profc_bar, i32 0, i32 2), align 1
+; CHECK-NEXT: br label %[[BB6]]
+; CHECK: [[BB6]]:
+; CHECK-NEXT: store i32 0, ptr [[RETVAL]], align 4
+; CHECK-NEXT: br label %[[RETURN]]
+; CHECK: [[RETURN]]:
+; CHECK-NEXT: [[TMP7:%.*]] = load i32, ptr [[RETVAL]], align 4
+; CHECK-NEXT: ret i32 [[TMP7]]
+;
entry:
%retval = alloca i32, align 4
%cond.addr = alloca i32, align 4
More information about the llvm-commits
mailing list