diff options
author | Nicholas Clark <nick@ccl4.org> | 2006-11-27 08:02:35 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2006-11-27 08:02:35 +0000 |
commit | 2b8b47818cbb3c4bb890eb720fdb914578831f39 (patch) | |
tree | 4b86d84c82b0f28be0ac53548df68f301cf39ee0 /regexec.c | |
parent | 55eed6530071fdede680c5313b36f33946ae9956 (diff) | |
download | perl-2b8b47818cbb3c4bb890eb720fdb914578831f39.tar.gz |
Move words and revcharmap out of struct _rev_trie_data and duplicate
them on thread clone.
p4raw-id: //depot/perl@29394
Diffstat (limited to 'regexec.c')
-rw-r--r-- | regexec.c | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -2947,9 +2947,9 @@ S_regmatch(pTHX_ regmatch_info *reginfo, regnode *prog) if ( ST.accepted == 1 ) { /* only one choice left - just continue */ DEBUG_EXECUTE_r({ - reg_trie_data * const trie - = (reg_trie_data*)rexi->data->data[ ARG(ST.me) ]; - SV ** const tmp = av_fetch( trie->words, + AV *const trie_words + = (AV *) rexi->data->data[ARG(ST.me)+TRIE_WORDS_OFFSET]; + SV ** const tmp = av_fetch( trie_words, ST.accept_buff[ 0 ].wordnum-1, 0 ); SV *sv= tmp ? sv_newmortal() : NULL; @@ -3028,9 +3028,9 @@ S_regmatch(pTHX_ regmatch_info *reginfo, regnode *prog) } DEBUG_EXECUTE_r({ - reg_trie_data * const trie - = (reg_trie_data*)rexi->data->data[ ARG(ST.me) ]; - SV ** const tmp = av_fetch( trie->words, + AV *const trie_words + = (AV *) rexi->data->data[ARG(ST.me)+TRIE_WORDS_OFFSET]; + SV ** const tmp = av_fetch( trie_words, ST.accept_buff[ best ].wordnum - 1, 0 ); regnode *nextop=(!ST.jump || !ST.jump[ST.accept_buff[best].wordnum]) ? ST.B : |