xref: /llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-instsched.ll (revision d9b511d8e8c43f79e0e277be287656693dd6563f)
13a5f8a3eSHongtao Yu; REQUIRES: x86_64-linux
2*d9b511d8SHongtao Yu; RUN: llc < %s -mcpu=generic -mtriple=x86_64-- -O3 | FileCheck %s
31cb47a06SHongtao Yu
41cb47a06SHongtao Yudefine float @foo(float %x) #0 {
51cb47a06SHongtao Yu  %tmp1 = fmul float %x, 3.000000e+00
61cb47a06SHongtao Yu  %tmp3 = fmul float %x, 5.000000e+00
71cb47a06SHongtao Yu  %tmp5 = fmul float %x, 7.000000e+00
81cb47a06SHongtao Yu  %tmp7 = fmul float %x, 1.100000e+01
91cb47a06SHongtao Yu  call void @llvm.pseudoprobe(i64 6699318081062747564, i64 1, i32 0, i64 -1)
101cb47a06SHongtao Yu  %tmp10 = fadd float %tmp1, %tmp3
111cb47a06SHongtao Yu  %tmp12 = fadd float %tmp10, %tmp5
121cb47a06SHongtao Yu  %tmp14 = fadd float %tmp12, %tmp7
131cb47a06SHongtao Yu  ret float %tmp14
141cb47a06SHongtao Yu; CHECK: mulss
151cb47a06SHongtao Yu; CHECK: mulss
161cb47a06SHongtao Yu; CHECK: addss
171cb47a06SHongtao Yu; CHECK: mulss
181cb47a06SHongtao Yu; CHECK: addss
191cb47a06SHongtao Yu; CHECK: mulss
201cb47a06SHongtao Yu; CHECK: addss
211cb47a06SHongtao Yu; CHECK: ret
221cb47a06SHongtao Yu}
231cb47a06SHongtao Yu
241cb47a06SHongtao Yu; Function Attrs: inaccessiblememonly nounwind willreturn
251cb47a06SHongtao Yudeclare void @llvm.pseudoprobe(i64, i64, i32, i64) #1
261cb47a06SHongtao Yu
271cb47a06SHongtao Yuattributes #0 = { nounwind }
281cb47a06SHongtao Yuattributes #1 = { inaccessiblememonly nounwind willreturn }
291cb47a06SHongtao Yu
301cb47a06SHongtao Yu!llvm.pseudo_probe_desc = !{!0}
311cb47a06SHongtao Yu
321cb47a06SHongtao Yu!0 = !{i64 6699318081062747564, i64 4294967295, !"foo", null}
331cb47a06SHongtao Yu
34