[clang] [llvm] [ubsan] Parse and use <cutoffs[0,1,2]=70000;cutoffs[5,6,8]=90000> in LowerAllowCheckPass (PR #124211)

Thurston Dang via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 27 16:54:09 PST 2025


================
@@ -107,7 +108,18 @@ static bool removeUbsanTraps(Function &F, const BlockFrequencyInfo &BFI,
       case Intrinsic::allow_runtime_check: {
         ++NumChecksTotal;
 
-        bool ToRemove = ShouldRemove(BB);
+        bool ToRemove = ShouldRemoveRandom();
+
+        unsigned int cutoff = 0;
+        if (ID == Intrinsic::allow_ubsan_check) {
+          auto *Kind = cast<ConstantInt>(II->getArgOperand(0));
+          if (Kind->getZExtValue() < cutoffs.size())
+            cutoff = cutoffs[Kind->getZExtValue()];
+        }
+        if (HotPercentileCutoff.getNumOccurrences())
----------------
thurstond wrote:

Done

https://github.com/llvm/llvm-project/pull/124211


More information about the llvm-commits mailing list