diff options
Diffstat (limited to 'llvm/lib/Transforms')
| -rw-r--r-- | llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp | 5 | 
1 files changed, 4 insertions, 1 deletions
| diff --git a/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp b/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp index 258b77c8add..d9c25f2e981 100644 --- a/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp +++ b/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp @@ -205,6 +205,7 @@ struct SelectInstVisitor : public InstVisitor<SelectInstVisitor> {    SelectInstVisitor(Function &Func) : F(Func) {}    void countSelects(Function &Func) { +    NSIs = 0;      Mode = VM_counting;      visit(Func);    } @@ -234,6 +235,8 @@ struct SelectInstVisitor : public InstVisitor<SelectInstVisitor> {    void annotateOneSelectInst(SelectInst &SI);    // Visit \p SI instruction and perform tasks according to visit mode.    void visitSelectInst(SelectInst &SI); +  // Return the number of select instructions. This needs be called after +  // countSelects().    unsigned getNumOfSelectInsts() const { return NSIs; }  }; @@ -1104,9 +1107,9 @@ void SelectInstVisitor::visitSelectInst(SelectInst &SI) {    if (SI.getCondition()->getType()->isVectorTy())      return; -  NSIs++;    switch (Mode) {    case VM_counting: +    NSIs++;      return;    case VM_instrument:      instrumentOneSelectInst(SI); | 

