Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / Transforms / SampleProfile / pseudo-probe-cse.ll
blob29dd7076c2ede3b5b5692f16db29660869700530
1 ; RUN: opt < %s -S -passes='early-cse<memssa>' | FileCheck %s
3 define i16 @f1() readonly {
4   ret i16 0
7 declare void @f2()
9 ; Check that EarlyCSE correctly handles pseudo probes that don't have
10 ; a MemoryAccess. 
12 define void @f3() {
13 ; CHECK-LABEL: @f3(
14 ; CHECK-NEXT:    [[CALL1:%.*]] = call i16 @f1()
15 ; CHECK-NEXT:    call void @llvm.pseudoprobe
16 ; CHECK-NEXT:    ret void
18   %call1 = call i16 @f1()
19   call void @llvm.pseudoprobe(i64 6878943695821059507, i64 9, i32 0, i64 -1)
20   %call2 = call i16 @f1()
21   ret void
25 ; Function Attrs: inaccessiblememonly nounwind willreturn
26 declare void @llvm.pseudoprobe(i64, i64, i32, i64) #0
28 attributes #0 = { inaccessiblememonly nounwind willreturn }