In perl.git, the branch smoke-me/khw-5.21 has been created

<http://perl5.git.perl.org/perl.git/commitdiff/1d29e1bbe6a5915d2fa2cb3a24f9ce316de34e5e?hp=0000000000000000000000000000000000000000>

        at  1d29e1bbe6a5915d2fa2cb3a24f9ce316de34e5e (commit)

- Log -----------------------------------------------------------------
commit 1d29e1bbe6a5915d2fa2cb3a24f9ce316de34e5e
Author: Karl Williamson <[email protected]>
Date:   Mon Sep 22 13:59:39 2014 -0600

    Tighten uses of regex synthetic start class
    
    A synthetic start class (SSC) is generated by the regular expression
    pattern compiler to give a consolidation of all the possible things that
    can match at the beginning of where a pattern can possibly match.
    For example
        qr/a?bfoo/;
    requires the match to begin with either an 'a' or a 'b'.  There are no
    other possibilities.  We can set things up to quickly scan for either of
    these in the target string, and only when one of these is found do we
    need to look for 'foo'.
    
    In many patterns, no SSC is generated; and with the advent of tries,
    SSC's have become less important.
    
    There is an overhead associated with using SSCs.  If the number of
    possibilities that the SSC excludes is relatively small, it can be
    counter-productive to use them.
    
    This patch creates a crude sieve to decide whether to use an SSC or not.
    If the SSC doesn't exclude at least half the "likely" possiblities, it
    is discarded.  This is a starting point, and can be refined if
    necessary as we gain experience.
    
    See thread beginning with
    http://nntp.perl.org/group/perl.perl5.porters/212644

M       embed.fnc
M       embed.h
M       ext/re/t/regop.t
M       proto.h
M       regcomp.c
M       regen/unicode_constants.pl
M       t/re/pat.t
M       unicode_constants.h

commit 361290ce9f777679ebefac21c1f58cf44eee3c3c
Author: Karl Williamson <[email protected]>
Date:   Tue Sep 23 16:54:34 2014 -0600

    regcomp.c: Move macro definition earlier in file
    
    This is to prepare it to be used in earlier places than it is now.

M       regcomp.c

commit ef916f6f3afa6444b81caf50a9330e7df70ec7b3
Author: Karl Williamson <[email protected]>
Date:   Sat Sep 20 10:20:11 2014 -0600

    regcomp.c: Use strnEQ instead of series of tests
    
    At some point it is more efficient and certainly clearer to call a
    library function to do a strcmp than to test each individual byte.
    Based on irc discussion with the original coder of this, I changed this
    sequence of 6 comparisions to a strnEQ.  At the same time, this adds an
    buffer overlflow check.  I was unable to cause the previous code to
    overflow, but I believe it was possible.  And this changes the magic
    number 6 in the code to a mnemonic giving its meaning.

M       regcomp.c

commit 5dc3ce514b311ddb871830b53618ebdefacfcba9
Author: Karl Williamson <[email protected]>
Date:   Thu Aug 28 13:59:01 2014 -0600

    XXXcharbits

M       regcomp.h

commit 5514f2c7e9d5b6a7a4951db2bb7de712dbf6907b
Author: Karl Williamson <[email protected]>
Date:   Tue Jun 17 18:49:53 2014 -0600

    XXX partial perlapi text

M       perlvars.h

commit 044da12d06b1250d982eda64b2bb7fd7b338bfa1
Author: Karl Williamson <[email protected]>
Date:   Sat May 17 19:37:06 2014 -0600

    XXX Don't push. attempt to tell tries everything at compile time
    
    But, it appears this is thrown away, have to consult with Yves to see if
    is worth pursuing

M       embed.fnc
M       embed.h
M       perl.h
M       proto.h
M       regcomp.c
M       regcomp.h
M       regcomp.sym
-----------------------------------------------------------------------

--
Perl5 Master Repository

Reply via email to