Permalink
Switch branches/tags
Commits on Feb 26, 2016
  1. dl_init: also with modules

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

    Reini Urban
    Reini Urban committed Nov 21, 2015
    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
  3. Release 1.54 cperl and PERL_CORE support

    Reini Urban
    Reini Urban committed Feb 25, 2016
    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
  4. Makefile.PL: fix dump Config with miniperl

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

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

    Reini Urban
    Reini Urban committed Feb 10, 2016
    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.
  3. HEK_STATIC: do not prepend shared_he

    Reini Urban
    Reini Urban committed Feb 9, 2016
    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.
Commits on Feb 9, 2016
  1. HEK_STATIC: prepend static hek with shared_he

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

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

    Reini Urban
    Reini Urban committed Feb 8, 2016
    PVMG needs to have dynamic strings. revert the wrong
    optim. from f284806
Commits on Feb 7, 2016
  1. Changes: memory savings for -fcow and AvSTATIC

    Reini Urban
    Reini Urban committed Feb 7, 2016
  2. C -O2: giving up on -fcow for 5.18

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

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

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

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

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

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

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

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

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

    Reini Urban
    Reini Urban committed Feb 4, 2016
  2. .gdbinit: add malloc_error_break

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

    Reini Urban
    Reini Urban committed Feb 3, 2016
    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
  2. AvSTATIC: skip on D magic (test 90)

    Reini Urban
    Reini Urban committed Feb 2, 2016
  3. AvSTATIC: change to SVf_IsCOW

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

    Reini Urban
    Reini Urban committed Feb 2, 2016
  5. C: AvSTATIC with cperl5.22.2

    Reini Urban
    Reini Urban committed Jan 26, 2016
    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).
  6. C: fix cperl dl_boot

    Reini Urban
    Reini Urban committed Feb 3, 2016
    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
Commits on Feb 2, 2016
  1. C: skip XSLoader save with $CPERL51

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

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

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

    Reini Urban
    Reini Urban committed Jan 22, 2016
    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.
Commits on Jan 22, 2016
  1. add Socket to @b::C::Config::deps >=5.22

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

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

    Reini Urban
    Reini Urban committed Jan 22, 2016
    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>.