[PATCH] D86490: [CSSPGO] IR instrinsic for pseudo-probe block instrumentation

Hongtao Yu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 28 21:38:32 PDT 2020


hoy marked 2 inline comments as done.
hoy added inline comments.


================
Comment at: llvm/include/llvm/IR/BasicBlock.h:185
+  /// PHINode, a debug intrinsic, or a pseudo probe intrinsic.
+  const Instruction *getFirstNonPHIOrDbgOrPseudoProbe() const;
+  Instruction *getFirstNonPHIOrDbgOrPseudoProbe() {
----------------
davidxl wrote:
> I have concerns on the proliferation of interfaces. How about extending exiting two interfaces  (NonDebug, NonDebugOrLifemaker) with an optional argument 'bool SkipPseudoOp = true'?
Good idea, thanks for the suggestion! 

`SkipPseudoOp` is set to false by default. The APIs are called with `SkipPseudoOp=true` where we are sure to skip pseudo probes.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D86490



More information about the llvm-commits mailing list