diff options
| author | Justin Bogner <mail@justinbogner.com> | 2014-01-06 22:27:43 +0000 |
|---|---|---|
| committer | Justin Bogner <mail@justinbogner.com> | 2014-01-06 22:27:43 +0000 |
| commit | ef512b992943dbd5619176f770b5bac8efa33dd0 (patch) | |
| tree | e106c2ceca70e12d0f2205b00bd2e02deb70f887 /clang/lib/CodeGen/CGException.cpp | |
| parent | 6a9d2cfadd9cf8964b75436940a9e16fbc8a9417 (diff) | |
| download | bcm5719-llvm-ef512b992943dbd5619176f770b5bac8efa33dd0.tar.gz bcm5719-llvm-ef512b992943dbd5619176f770b5bac8efa33dd0.zip | |
CodeGen: Initial instrumentation based PGO implementation
llvm-svn: 198640
Diffstat (limited to 'clang/lib/CodeGen/CGException.cpp')
| -rw-r--r-- | clang/lib/CodeGen/CGException.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CGException.cpp b/clang/lib/CodeGen/CGException.cpp index 39a992aab17..26e061d41ab 100644 --- a/clang/lib/CodeGen/CGException.cpp +++ b/clang/lib/CodeGen/CGException.cpp @@ -1294,6 +1294,10 @@ void CodeGenFunction::ExitCXXTryStmt(const CXXTryStmt &S, bool IsFnTryBlock) { // Initialize the catch variable and set up the cleanups. BeginCatch(*this, C); + // Emit the PGO counter increment + RegionCounter CatchCnt = getPGORegionCounter(C); + CatchCnt.beginRegion(Builder); + // Perform the body of the catch. EmitStmt(C->getHandlerBlock()); @@ -1320,7 +1324,9 @@ void CodeGenFunction::ExitCXXTryStmt(const CXXTryStmt &S, bool IsFnTryBlock) { Builder.CreateBr(ContBB); } + RegionCounter ContCnt = getPGORegionCounter(&S); EmitBlock(ContBB); + ContCnt.beginRegion(Builder); } namespace { |

