xref: /llvm-project/llvm/test/Transforms/PGOProfile/infinite_loop.ll (revision 9ff36df5a4a7d52c51e950522870bb64912688d2)
18658cf99SFangrui Song; RUN: opt < %s -passes=instrprof -S -do-counter-promotion=1 | FileCheck %s
2cee313d2SEric Christopher; CHECK: store
3cee313d2SEric Christopher
4cee313d2SEric Christopher@__profn_foo = private constant [3 x i8] c"foo"
5cee313d2SEric Christopher
6cee313d2SEric Christopherdefine void @foo() {
7cee313d2SEric Christopherentry:
8cee313d2SEric Christopher  br label %while.body
9cee313d2SEric Christopher
10cee313d2SEric Christopher  while.body:                                       ; preds = %entry, %while.body
11*9ff36df5SFangrui Song    call void @llvm.instrprof.increment(ptr @__profn_foo, i64 14813359968, i32 1, i32 0)
12cee313d2SEric Christopher    call void (...) @bar() #2
13cee313d2SEric Christopher    br label %while.body
14cee313d2SEric Christopher}
15cee313d2SEric Christopher
16cee313d2SEric Christopherdeclare void @bar(...)
17cee313d2SEric Christopher
18*9ff36df5SFangrui Songdeclare void @llvm.instrprof.increment(ptr, i64, i32, i32) #0
19cee313d2SEric Christopher
20cee313d2SEric Christopherattributes #0 = { nounwind }
21cee313d2SEric Christopher
22