[PATCH] D92334: [CSSPGO][llvm-profgen] Pseudo probe decoding and disassembling

Hongtao Yu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 11 10:15:08 PST 2021


hoy added inline comments.


================
Comment at: llvm/tools/llvm-profgen/PseudoProbe.h:111
+      : Address(Ad), GUID(G), Index(I), Type(K), Attribute(At),
+        InlineTree(Tree){};
+
----------------
wlei wrote:
> wmi wrote:
> > I assume PseudoProbeType of PseudoProbe will be direct call if Tree is not null. Indirect call has to be promoted or devirtualized to direct call before it can be inlined. Does it make sense to add an assertion here?
> As mentioned above, for the tree like `DummyRoot -->OutlinedFunc --> InlinedFunc`, the `Tree` variable here can be either OutlinedFunc or InlinedFunc. It shouldn't be null.
> 
> I'm not quite sure about `Indirect call` type, I thought it has been already deprecated here. @hoy Could you help to confirm this? If so, I will add the assertion later.
The InlineTree of a probe indicates whether the probe itself is currently in an outlined function or from an inlined function, regardless of the probe's type. An indirect call probe from an inlinee can be inlined into the caller thus it ends up with an inline tree.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D92334



More information about the llvm-commits mailing list