================
@@ -1157,6 +1234,34 @@ void CodeGenPGO::emitCounterSetOrIncrement(CGBuilderTy
&Builder, const Stmt *S,
CGM.getIntrinsic(llvm::Intrinsic::instrprof_increment_step), Args);
}
+void CodeGenPGO::emitCallContinuationCounter(CGBuilderTy &Builder,
+ const Stmt *S) {
+ if (!CallContinuationCounterMap)
+ return;
+
+ auto I = CallContinuationCounterMap->find(S);
+ if (I == CallContinuationCounterMap->end())
+ return;
+
+ if (!Builder.GetInsertBlock())
+ return;
+
+ auto *NormalizedFuncNameVarPtr =
+ llvm::ConstantExpr::getPointerBitCastOrAddrSpaceCast(
+ FuncNameVar, llvm::PointerType::get(CGM.getLLVMContext(), 0));
+
+ llvm::Value *Args[] = {
+ NormalizedFuncNameVarPtr, Builder.getInt64(FunctionHash),
+ Builder.getInt32(NumRegionCounters), Builder.getInt32(I->second)};
+
+ if (llvm::EnableSingleByteCoverage)
+ Builder.CreateCall(CGM.getIntrinsic(llvm::Intrinsic::instrprof_cover),
+ ArrayRef(Args, 4));
----------------
ankurrj7 wrote:
done , add a test for single byte coverage
https://github.com/llvm/llvm-project/pull/201079
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits