]> granicus.if.org Git - onig/commitdiff
add output of MaxRegNum
authorK.Kosako <kosako@sofnec.co.jp>
Tue, 24 Sep 2019 09:12:31 +0000 (18:12 +0900)
committerK.Kosako <kosako@sofnec.co.jp>
Tue, 24 Sep 2019 09:12:31 +0000 (18:12 +0900)
harnesses/regset-harness.c

index 7a6881f983c367fd3008961c65cb61be55f606c6..a2ca6fc58f55c22a70505cce3ccefd1b862c86e9 100644 (file)
@@ -143,6 +143,8 @@ exec(OnigEncoding enc, OnigOptionType options,
 
 #define EXEC_PRINT_INTERVAL  2000000
 
+static int MaxRegNum;
+
 extern int
 LLVMFuzzerTestOneInput(const uint8_t * Data, size_t Size)
 {
@@ -174,6 +176,9 @@ LLVMFuzzerTestOneInput(const uint8_t * Data, size_t Size)
     reg_num = reg_num % 15;  // zero is OK.
   }
 
+  if (MaxRegNum < reg_num)
+    MaxRegNum = reg_num;
+
   if (reg_num == 0)
     pattern_size = 1;
   else
@@ -226,8 +231,8 @@ LLVMFuzzerTestOneInput(const uint8_t * Data, size_t Size)
     freg   = (float )REGEX_SUCCESS_COUNT / INPUT_COUNT;
     fvalid = (float )VALID_STRING_COUNT / INPUT_COUNT;
 
-    fprintf(stdout, "%s: %ld: EXEC:%.2f, REG:%.2f, VALID:%.2f\n",
-            d, EXEC_COUNT, fexec, freg, fvalid);
+    fprintf(stdout, "%s: %ld: EXEC:%.2f, REG:%.2f, VALID:%.2f MAX REG:%d\n",
+            d, EXEC_COUNT, fexec, freg, fvalid, MaxRegNum);
 
     EXEC_COUNT_INTERVAL = 0;
   }