Re-land [openmp] Fix warnings when building on Windows with latest MSVC or Clang...
[llvm-project.git] / llvm / test / Verifier / memprof-metadata-good.ll
blob48546b1199edc13416077bb4b7807b5d6f11570c
1 ; Test that well-formed memprof and callsite metadata pass verification.
2 ; RUN: llvm-as -disable-output < %s 2>&1
4 define ptr @test1() {
5 entry:
6   %call = call noalias dereferenceable_or_null(40) ptr @malloc(i64 noundef 40), !memprof !0, !callsite !5
7   ret ptr %call
10 define ptr @test2() {
11 entry:
12   %call = call noundef ptr @test1(), !callsite !6
13   ret ptr %call
16 define ptr @test3() {
17 entry:
18   %call = call noundef ptr @test1(), !callsite !7
19   ret ptr %call
22 declare dso_local noalias noundef ptr @malloc(i64 noundef)
24 !0 = !{!1, !3}
25 ; !memprof metadata should be able to support an arbitrary list of string tags.
26 !1 = !{!2, !"default", !"tag2"}
27 !2 = !{i64 123, i64 456}
28 !3 = !{!4, !"cold", !"tag3", !"tag4"}
29 !4 = !{i64 123, i64 789, i64 678}
30 !5 = !{i64 123}
31 !6 = !{i64 456}
32 ; Inlined callsites will have more than one call stack id.
33 !7 = !{i64 789, i64 678}