[PATCH] D91756: [CSSPGO] Pseudo probes for function calls.

Hongtao Yu via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Dec 1 23:24:36 PST 2020


hoy added a comment.

In D91756#2427759 <https://reviews.llvm.org/D91756#2427759>, @wmi wrote:

> Another question. Sorry for not bringing it up earlier. When a call with probe metadata attached is inlined, the probe will be gone or it will be kept somehow? I think you want to keep the probe especially for inline instance to reconstruct the context but I didn't figure it out how you did that from the description.

No problem. Sorry for not clarifying it in the description. When a callee is inlined, the probe metadata will go with the inlined instructions. The `!dbg` metadata of an inlined instruction is in form of a scope stack. The top of the stack is the instruction's original `!dbg` metadata and the bottom of the stack is the for the original callsite of the top-level inliner. Except for the top of the stack, all other elements of the stack actually refer to the nested inlined callsites whose discriminator fields (which actually represents a calliste probe) can be used to represent the inline context of an inlined `PseudoProbeInst` or a `CallInst`. I'll update the description.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D91756/new/

https://reviews.llvm.org/D91756



More information about the cfe-commits mailing list