[llvm] r308668 - [PGO] Move the PGOInstrumentation pass to new OptRemark API.

Xinliang David Li via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 23 10:06:01 PDT 2018


On Thu, Jul 20, 2017 at 1:43 PM, Davide Italiano via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: davide
> Date: Thu Jul 20 13:43:05 2017
> New Revision: 308668
>
> URL: http://llvm.org/viewvc/llvm-project?rev=308668&view=rev
> Log:
> [PGO] Move the PGOInstrumentation pass to new OptRemark API.
>
> This fixes PR33791.
>
> Modified:
>     llvm/trunk/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
>     llvm/trunk/test/Transforms/PGOProfile/branch1.ll
>
> Modified: llvm/trunk/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/
> Transforms/Instrumentation/PGOInstrumentation.cpp?rev=
> 308668&r1=308667&r2=308668&view=diff
> ============================================================
> ==================
> --- llvm/trunk/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
> (original)
> +++ llvm/trunk/lib/Transforms/Instrumentation/PGOInstrumentation.cpp Thu
> Jul 20 13:43:05 2017
> @@ -59,6 +59,7 @@
>  #include "llvm/Analysis/CFG.h"
>  #include "llvm/Analysis/IndirectCallSiteVisitor.h"
>  #include "llvm/Analysis/LoopInfo.h"
> +#include "llvm/Analysis/OptimizationDiagnosticInfo.h"
>  #include "llvm/IR/CallSite.h"
>  #include "llvm/IR/DiagnosticInfo.h"
>  #include "llvm/IR/Dominators.h"
> @@ -1483,10 +1484,9 @@ void setProfMetadata(Module *M, Instruct
>      OS << " (total count : " << TotalCount << ")";
>      OS.flush();
>      Function *F = TI->getParent()->getParent();
> -    emitOptimizationRemarkAnalysis(
> -        F->getContext(), "pgo-use-annot", *F, TI->getDebugLoc(),
> -        Twine(BrCondStr) +
> -            " is true with probability : " + Twine(BranchProbStr));
> +    OptimizationRemarkEmitter ORE(F);
> +    ORE.emit(OptimizationRemark(DEBUG_TYPE, "pgo-instrumentation", TI)
> +             << BrCondStr << " is true with probability : " <<
> BranchProbStr);
>    }
>  }
>
>

Davide, I just noticed this change.  This message is not about
transformations nor missed optimizations, so it should remain as
'remark-analysis'. Also the pass name should not be 'pgo-instrumentation'
because it is only meaningful during profile annotation pass.  Any reason
for the underlying change?

thanks,

David




>
> Modified: llvm/trunk/test/Transforms/PGOProfile/branch1.ll
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/
> Transforms/PGOProfile/branch1.ll?rev=308668&r1=308667&r2=308668&view=diff
> ============================================================
> ==================
> --- llvm/trunk/test/Transforms/PGOProfile/branch1.ll (original)
> +++ llvm/trunk/test/Transforms/PGOProfile/branch1.ll Thu Jul 20 13:43:05
> 2017
> @@ -15,8 +15,8 @@
>  ; RUN: opt < %s -passes=pgo-instr-use -pgo-test-profile-file=%t.profdata
> -S | FileCheck %s --check-prefix=USE
>  ; RUN: opt < %s -passes=pgo-instr-use -pgo-test-profile-file=%t.l.profdata
> -S | FileCheck %s --check-prefix=USE-LARGE
>
> -; RUN: opt < %s -pgo-instr-use -pgo-test-profile-file=%t.profdata
> -pass-remarks-analysis=pgo-use-annot -pgo-emit-branch-prob -S 2>&1|
> FileCheck %s --check-prefix=ANALYSIS
> -; RUN: opt < %s -passes=pgo-instr-use -pgo-test-profile-file=%t.profdata
> -pass-remarks-analysis=pgo-use-annot -pgo-emit-branch-prob -S 2>&1|
> FileCheck %s --check-prefix=ANALYSIS
> +; RUN: opt < %s -pgo-instr-use -pgo-test-profile-file=%t.profdata
> -pass-remarks=pgo-instrumentation -pgo-emit-branch-prob -S 2>&1|
> FileCheck %s --check-prefix=ANALYSIS
> +; RUN: opt < %s -passes=pgo-instr-use -pgo-test-profile-file=%t.profdata
> -pass-remarks=pgo-instrumentation -pgo-emit-branch-prob -S 2>&1|
> FileCheck %s --check-prefix=ANALYSIS
>
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180323/0cf96466/attachment.html>


More information about the llvm-commits mailing list