Add function entry count metadata.
Summary:
This adds three Function methods to handle function entry counts:
setEntryCount() and getEntryCount().
Entry counts are stored under the MD_prof metadata node with the name
"function_entry_count". They are unsigned 64 bit values set by profilers
(instrumentation and sample profiler changes coming up).
Added documentation for new profile metadata and tests.
Reviewers: dexonsmith, bogner
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D9628
llvm-svn: 237260
diff --git a/llvm/test/Verifier/function-metadata-good.ll b/llvm/test/Verifier/function-metadata-good.ll
new file mode 100644
index 0000000..3d73a1c
--- /dev/null
+++ b/llvm/test/Verifier/function-metadata-good.ll
@@ -0,0 +1,8 @@
+; RUN: llvm-as < %s -o /dev/null 2>&1
+
+; Function foo() is called 2,304 times at runtime.
+define i32 @foo() !prof !0 {
+ ret i32 0
+}
+
+!0 = !{!"function_entry_count", i32 2304}