summaryrefslogtreecommitdiff
path: root/regcomp.c
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2001-11-24 16:30:42 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2001-11-24 16:11:04 +0000
commitf8bef55053427841654eec6e37b8f0f4224b2976 (patch)
treeeea4e2a1545caab4e9641ad6a2230650dad6a1f9 /regcomp.c
parent30de85b6294027ce5dd68a336e7f75fe8fb14941 (diff)
downloadperl-f8bef55053427841654eec6e37b8f0f4224b2976.tar.gz
memset() is cheaper than a loop of 256 bit-a-a-times
Message-ID: <20011124163042.R37621@plum.flirble.org> p4raw-id: //depot/perl@13236
Diffstat (limited to 'regcomp.c')
-rw-r--r--regcomp.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/regcomp.c b/regcomp.c
index 3eb4e3937d..c73e815750 100644
--- a/regcomp.c
+++ b/regcomp.c
@@ -522,11 +522,8 @@ S_scan_commit(pTHX_ RExC_state_t *pRExC_state, scan_data_t *data)
STATIC void
S_cl_anything(pTHX_ RExC_state_t *pRExC_state, struct regnode_charclass_class *cl)
{
- int value;
-
ANYOF_CLASS_ZERO(cl);
- for (value = 0; value < 256; ++value)
- ANYOF_BITMAP_SET(cl, value);
+ ANYOF_BITMAP_SETALL(cl);
cl->flags = ANYOF_EOS|ANYOF_UNICODE_ALL;
if (LOC)
cl->flags |= ANYOF_LOCALE;
@@ -543,9 +540,8 @@ S_cl_is_anything(pTHX_ struct regnode_charclass_class *cl)
return 1;
if (!(cl->flags & ANYOF_UNICODE_ALL))
return 0;
- for (value = 0; value < 256; ++value)
- if (!ANYOF_BITMAP_TEST(cl, value))
- return 0;
+ if (!ANYOF_BITMAP_TESTALLSET(cl))
+ return 0;
return 1;
}