reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1306 CGF.EHStack.pushCleanup<CallEndCatchForFinally>(NormalAndEHCleanup, 1312 CGF.Builder.CreateLoad(CGF.getNormalCleanupDestSlot(), 1312 CGF.Builder.CreateLoad(CGF.getNormalCleanupDestSlot(), 1316 CGF.EmitStmt(Body); 1320 if (CGF.HaveInsertPoint()) { 1321 llvm::BasicBlock *RethrowBB = CGF.createBasicBlock("finally.rethrow"); 1322 llvm::BasicBlock *ContBB = CGF.createBasicBlock("finally.cont"); 1325 CGF.Builder.CreateFlagLoad(ForEHVar, "finally.shouldthrow"); 1326 CGF.Builder.CreateCondBr(ShouldRethrow, RethrowBB, ContBB); 1328 CGF.EmitBlock(RethrowBB); 1330 CGF.EmitRuntimeCallOrInvoke(RethrowFn, 1331 CGF.Builder.CreateAlignedLoad(SavedExnVar, CGF.getPointerAlign())); 1331 CGF.Builder.CreateAlignedLoad(SavedExnVar, CGF.getPointerAlign())); 1333 CGF.EmitRuntimeCallOrInvoke(RethrowFn); 1335 CGF.Builder.CreateUnreachable(); 1337 CGF.EmitBlock(ContBB); 1340 CGF.Builder.CreateStore(SavedCleanupDest, 1341 CGF.getNormalCleanupDestSlot()); 1348 CGBuilderTy::InsertPoint SavedIP = CGF.Builder.saveAndClearIP(); 1349 CGF.PopCleanupBlock(); 1350 CGF.Builder.restoreIP(SavedIP); 1355 CGF.EnsureInsertPoint();