mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-23 01:24:30 +00:00
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 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@237260 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -53,6 +53,16 @@ MDNode *MDBuilder::createBranchWeights(ArrayRef<uint32_t> Weights) {
|
||||
return MDNode::get(Context, Vals);
|
||||
}
|
||||
|
||||
MDNode *MDBuilder::createFunctionEntryCount(uint64_t Count) {
|
||||
SmallVector<Metadata *, 2> Vals(2);
|
||||
Vals[0] = createString("function_entry_count");
|
||||
|
||||
Type *Int64Ty = Type::getInt64Ty(Context);
|
||||
Vals[1] = createConstant(ConstantInt::get(Int64Ty, Count));
|
||||
|
||||
return MDNode::get(Context, Vals);
|
||||
}
|
||||
|
||||
MDNode *MDBuilder::createRange(const APInt &Lo, const APInt &Hi) {
|
||||
assert(Lo.getBitWidth() == Hi.getBitWidth() && "Mismatched bitwidths!");
|
||||
|
||||
|
Reference in New Issue
Block a user