[llvm] [PseudoProbe] Encode inlining attributes to probe descriptor (PR #177695)
Wei Wang via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 29 16:48:36 PDT 2026
================
@@ -421,8 +422,10 @@ bool MCPseudoProbeDecoder::buildGUID2FuncDescMap(const uint8_t *Start,
StringRef Name = cantFail(errorOrToExpected(readString(NameSize)));
// Initialize PseudoProbeFuncDesc and populate it into GUID2FuncDescMap
- GUID2FuncDescMap.emplace_back(
- GUID, Hash, IsMMapped ? Name : Name.copy(FuncNameAllocator));
+ // [60:63] bits in Hash are encoded with attributes.
+ GUID2FuncDescMap.emplace_back(GUID, Hash & ((1ULL << 60) - 1), Hash >> 60,
----------------
apolloww wrote:
Hash is not truncated, it's still 64bit in both old and new profile. When an old profile is consumed, the attributes (bit 60 to 63) are always 0, so it would be treated as function without any inline attribute.
https://github.com/llvm/llvm-project/pull/177695
More information about the llvm-commits
mailing list