Permalink
Commits on Feb 26, 2016
  1. dl_init: also with modules

    committed Nov 23, 2015
  2. C, perlcc: -m, compile to module

    perlcc: handle perlcc options for -m.
    disallow -r with -m
    use default dlext for Output
    
    C: skip packages not in mainfile, the module.
    broke output_declarations/output_boilerplate
    add output_functions/save_destruct.
    broke destruct into local and global destruct.
    
    buildcc.PL: docs only
    committed Nov 21, 2015
  3. Release 1.54 cperl and PERL_CORE support

    Fixes to include B-C into cperl:
    * cannot use XSLoader, need Makefile.PL to be processed by miniperl.
    * Move some B data back to B::Asmdata.
    * PERL_CORE specific inc and lib paths in the tests and scripts
    * -L and -I../.. paths for perlcc
    * fixed wrong PERL_CORE BEGIN block in some tests
    * @Config::deps fallback with miniperl
    
    Passes all cperl tests in cpan/B-C
    
    Fix some exec-bits
    Update p5-coretests
    committed Feb 25, 2016
  4. Makefile.PL: fix dump Config with miniperl

    can only use miniperl, no Scalar::Util, thus no Data::Dumper
    with PERL_CORE
    committed Feb 26, 2016
Commits on Feb 10, 2016
  1. Changes for HEK_STATIC, fix t/test.pl TODO

    cperl passes now
    committed Feb 10, 2016
  2. HEK_STATIC: add utf8 to hek key cache

    seperate utf8 from non-utf8 keys in our hek cache.
    Fixes test 245, which has keys which hash to the same values, with
    just different utf8 flags.
    committed Feb 10, 2016
  3. HEK_STATIC: do not prepend shared_he

    with latest cperl f048b49 we do not need to prepend a shared_he
    in front of every static he anymore.
    
    Note that we need a cperl which omits the refcount bump in
    share_hek_hek() with HEK_STATIC, a noop.
    committed Feb 9, 2016
Commits on Feb 9, 2016
  1. HEK_STATIC: prepend static hek with shared_he

    even if static we need a prev. shared_he for the refcount
    in unshare_hek_or_pvn()
    committed Feb 9, 2016
  2. C 1.53_09: add HEK_STATIC support for cperl

    static shared hek needs run-time support from cperl.
    probe for #define HEK_STATIC support in Makefile.PL
    committed Feb 8, 2016
  3. C: revert PVMG unstatic with -fcow

    PVMG needs to have dynamic strings. revert the wrong
    optim. from f284806
    committed Feb 8, 2016
Commits on Feb 7, 2016
  1. C -O2: giving up on -fcow for 5.18

    start with static cow optimizations with 5.20
    committed Feb 7, 2016
  2. C: unstatic 5.18 const svop strings

    and also VERSION strings
    committed Feb 7, 2016
Commits on Feb 6, 2016
  1. C 1.53_08: revert -fcow with -O2

    since 5.18 rather enforce static COW strings, but with len.
    len=0 would be cow shared strings.
    set and unset static COW flag
    committed Feb 4, 2016
  2. t/perldoc.t: Improve test for -T failure

    if -T fails strip the banner lines from the pager,
    first and last lines. esp. needed for 5.18-5.20
    committed Feb 6, 2016
  3. t/perldoc.t: fix for cperl

    -- is wrong
    committed Feb 6, 2016
  4. C: improve load_file regex

    actually quote the dot
    committed Feb 6, 2016
  5. C: load_file Cwd vs File/Spec/Unix.pm on cperl

    search Cwd.so in @DynaLoader::dl_shared_objects first
    committed Feb 6, 2016
  6. C: cperl -O3 fast_destruct for unopaux

    special-case static unopaux destruction as LEAVE
    in fast_destruct destructs the ops with cperl
    
    fixes t/issue306.t with -O3
    committed Feb 6, 2016
  7. C: dump builtin %INC for cperl

    fixes e.g. #363, t/issue27.t runtime require of XSLoader
    committed Feb 6, 2016
Commits on Feb 4, 2016
  1. Changes: updates for AvSTATIC

    committed Feb 4, 2016
Commits on Feb 3, 2016
  1. t/testc.sh: measure rss memory usage

    with DynaLoader and IO::Scalar
    perlall -m make '-e0; echo $p; t/testc.sh -q 1942'
    
    t/testc.sh -q 1942 (PerlIO::scalar, DynaLoader, Config)
                            rss  vsz
    cperl5.22.2-nt-avcog    2524 2438744
                       -O3  2536 2447956
    cperl5.22.2d-nt-avcog 	3516 2451728
    perl5.22.1-nt           3316 2438912
    perl5.20.3-nt           3264 2438696
    perl5.18.2-nt           3036 2438468
    perl5.18.4d             4276 2450540
    perl5.18.4d-nt          4120 2451332
    perl5.16.3              4072 2458904
    perl5.16.3-nt           3008 2438420
    perl5.14.4              3168 2447764
    perl5.14.4-nt           2944 2447540
    perl5.14.4-nt -O3       2852 2447472
    perl5.12.5              3440 2449964
    perl5.12.5-nt           3244 2447716
    perl5.10.1-nt           3172 2456836
    perl5.8.9               3176 2465976
    perl5.8.9d-nt           3096 2438400
    perl5.8.5d-nt           3228 2456836
    perl5.8.4d-nt           3176 2457792
    perl5.6.2d-nt           1764 2437408
    committed Feb 3, 2016
  2. AvSTATIC: change to SVf_IsCOW

    with cperl feature/gh62-avstatic
    which actually implements AV copy-on-grow on av_extend
    committed Feb 2, 2016
  3. C: AvSTATIC => avcog or avcow

    committed Feb 2, 2016
  4. C: AvSTATIC with cperl5.22.2

    set AvSTATIC with cperl5.22.2 on -O1 (-fav-init).
    TODO:
    * we should avoid this when it is extended. (av_extend, push, unshift)
      track extend ops per array.
    * we should put it into the const segment when the array is mostly
      READONLY (@ISA, @INC).
    committed Jan 26, 2016
  5. C: fix cperl dl_boot

    cperl uses the sofile pathname for XSLoader::load_file, unlike
    its B::C version.
    call dl_boot manually, as &DynaLoader::bootstrap is not empty there
    committed Feb 3, 2016
Commits on Feb 2, 2016
  1. C: skip XSLoader save with $CPERL51

    it is already builtin
    committed Feb 1, 2016
  2. C: add op_rettype support

    probe for it, searching through op.h
    added with some cperl5.22.2 variants.
    currently with the featurex/gh7-sig+libs branch
    committed Feb 1, 2016
Commits on Jan 24, 2016
  1. C: allow PADNAME >60. dynamically create oversized structs

    on demand with 5.22
    committed Jan 24, 2016
  2. C 1.53_06: PADNAME_{size} for 5.22

    split the static padname_with_str struct into individual sizes.
    $padnamesect is now a hash of aligned to 8 sizes.
    This should safe a few bytes, estimated 300Kb for cpsrvd.
    committed Jan 22, 2016
Commits on Jan 22, 2016
  1. add Socket to @B::C::Config::deps >=5.22

    One of the major 5.22 bloat issues: #361, #314.
    committed Jan 22, 2016
  2. C: fixup IsCOW -fno-cow

    committed Jan 22, 2016
  3. C 1.53_05: new -fno-cow with -O2

    needed since 5.18 for less memory, more static strings.
    
    Strip the COW flag since 5.18 from all strings. COW strings make not much
    sense as compiled perl strings, as the requirement for a writable COWREFCNT
    flag disallows making the whole buffer static.  And if a buffer needs to be
    COW at run-time, the runtime adds the COW flag by itself.  COW strings
    typically cost about 20% more memory since 5.18.
    
    Enabled with C<-O2>.
    committed Jan 22, 2016