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

<http://perl5.git.perl.org/perl.git/commitdiff/82439a0e5df1c51ddc7de0a1cebe70ff6dc06b6e?hp=0000000000000000000000000000000000000000>

        at  82439a0e5df1c51ddc7de0a1cebe70ff6dc06b6e (commit)

- Log -----------------------------------------------------------------
commit 82439a0e5df1c51ddc7de0a1cebe70ff6dc06b6e
Author: Nicholas Clark <[email protected]>
Date:   Tue Jun 28 15:20:56 2011 +0200

    For shorter strings, store C<study>'s data as U8s or U16s, instead of U32s.
    
    The assumption is that most studied strings are fairly short, hence the pain
    of the extra code is worth it, given the memory savings.
    80 character string, 336 bytes as U8, down from 1344 as U32
    800 character string, 2112 bytes as U16, down from 4224 as U32

M       ext/Devel-Peek/t/Peek.t
M       pod/perldelta.pod
M       pp.c
M       regexec.c
M       util.c

commit d1fe29cba1abcab1830167571f07e5850e35a8c9
Author: Nicholas Clark <[email protected]>
Date:   Tue Jun 28 12:17:38 2011 +0200

    Store C<study>'s data as U32s, instead of I32s.
    
    The "no more" condition is now represented as ~0, instead of -1.

M       pp.c
M       regexec.c
M       util.c

commit c6141b8b749c417560a64d8ef1a10a993b7857bd
Author: Nicholas Clark <[email protected]>
Date:   Mon Jun 27 21:13:39 2011 +0200

    Tidy code in pp_study and Perl_screaminstr()
    
    In pp_study eliminate the variable pos, which duplicates len. ch should be 
U8,
    not I32.
    
    In Perl_screaminstr(), move the declarations of s and x to their point of 
use,
    convert a for loop to a while loop, and avoid incrementing and decrementing 
s.
    found is a boolean.

M       pp.c
M       util.c

commit 9f31a5cac5f2994757bc9ecf7e1eb422809338ba
Author: Nicholas Clark <[email protected]>
Date:   Mon Jun 27 20:51:04 2011 +0200

    Store C<study>'s data in in mg_ptr instead of interpreter variables.
    
    This allows more than one C<study> to be active at the same time.
    It eliminates PL_screamfirst, PL_lastscream, PL_maxscream.

M       embedvar.h
M       ext/Devel-Peek/t/Peek.t
M       intrpvar.h
M       perl.c
M       pod/perldelta.pod
M       pod/perlfunc.pod
M       pp.c
M       regexec.c
M       sv.c
M       util.c

commit 2d4acb0634981d648424605f921527d9e00fc630
Author: Nicholas Clark <[email protected]>
Date:   Mon Jun 27 17:58:10 2011 +0200

    Merge PL_scream{first,next} into one allocated buffer.
    
    Effectively, PL_screamnext is now PL_screamfirst + 256. The actual 
interpreter
    variable PL_screamnext is eliminated.

M       embedvar.h
M       intrpvar.h
M       perl.c
M       pp.c
M       sv.c
M       util.c

commit a63b65adef6d72b629770779e5b25623af96d787
Author: Nicholas Clark <[email protected]>
Date:   Mon Jun 27 17:14:39 2011 +0200

    Change PL_screamnext to store absolute positions.
    
    PL_screamnext gives the position of the next occurrence of the current 
octet.
    Previously it stored this as an offset from the current position, with -pos
    stored for "no more", so that the calculated new offset would be zero,
    allowing a zero/non-zero loop exit test in Perl_screaminstr().
    
    Now it stores absolute position, with -1 for "no more". Also codify -1 as 
the
    "not present" value for PL_screamfirst, instead of any negative value.

M       pp.c
M       regexec.c
M       util.c

commit b48c8194cfb5b78e91c44fa30575952b1d92bbd4
Author: Nicholas Clark <[email protected]>
Date:   Mon Jun 13 16:24:23 2011 +0200

    Split out study magic from pos magic.
    
    study uses magic to call SvSCREAM_off() if the scalar is modified. Allocate 
it
    its own magic type ('G' for now - pos magic is 'g'). Share the same "set"
    routine and vtable as regexp/bm/fm (setregxp and vtbl_regexp).

M       ext/Devel-Peek/t/Peek.t
M       mg.c
M       mg_names.c
M       mg_raw.h
M       mg_vtable.h
M       pod/perlguts.pod
M       pp.c
M       regen/mg_vtable.pl
M       t/porting/known_pod_issues.dat
-----------------------------------------------------------------------

--
Perl5 Master Repository

Reply via email to