From 9112cf4ae7f7ea8ab33c282aa02eec812421aeab Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Thu, 24 Mar 2022 01:57:34 +0900 Subject: regint.h: Reduce the frequency of rb_thread_check_ints edc8576a65b7082597d45a694434261ec3ac0d9e checks interrupt at every backtrack, which brought significant overhead. This change makes the check only once every 128 backtracks. --- regexec.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'regexec.c') diff --git a/regexec.c b/regexec.c index f6435d84c6..9535e45228 100644 --- a/regexec.c +++ b/regexec.c @@ -421,6 +421,7 @@ onig_region_copy(OnigRegion* to, const OnigRegion* from) (msa).start = (arg_start);\ (msa).gpos = (arg_gpos);\ (msa).best_len = ONIG_MISMATCH;\ + (msa).counter = 0;\ } while(0) #else # define MATCH_ARG_INIT(msa, arg_option, arg_region, arg_start, arg_gpos) do {\ @@ -429,6 +430,7 @@ onig_region_copy(OnigRegion* to, const OnigRegion* from) (msa).region = (arg_region);\ (msa).start = (arg_start);\ (msa).gpos = (arg_gpos);\ + (msa).counter = 0;\ } while(0) #endif -- cgit v1.2.1