Changes for version 1.27 - 2010-07-30

  • Fixed 1.26 CV regressions for 5.8 and 5.10
  • C.pm: add -DF print stringified sv and op flags. fixed xpvio off-by-one error for 5.10 (test 29) rewrote XPVCV forwards for >=5.10: (fails before) 1. only the SV is now forwarded, not the struct. 2. no duplicate SVs, the CV forward is just a link to one SV (#define CVIX) removed wrong CVf_ANON check causing CV failures (test 9,10,12). 5.13.3 still failing fixed CV svsect for 5.8 and 5.10
  • Bytecode.pm (1.08): removed wrong CVf_ANON check causing CV failures (test 9,10,12,...)
  • perlcc (2.08): added --time, support vprint -1
  • t/test.pl, t/bytecode.t: double check failing tests if it works uncompiled
  • t/testc.sh: add -D- for no gcc warnings added -f for testing single optimizations
  • t/testm.sh: add -D<args> flags for compiler debugging and link with -g added -T for perlcc --time
  • t/c_argv.t, script/perlcc: properly quote spaces in path of perl and `cwd`/blib
  • t/modules.t: add svn rev to B::C::Version

Documentation

ByteLoader bytecode versions
Autogenerated data about Perl ops, used to generate bytecode
Introduction to the Perl Compiler-Translator
The Perl op tree
Need help with the perl compiler, emit C or JIT, blabla
Assemble Perl bytecode
generate executables from Perl programs

Modules

Autogenerated data about Perl ops, used to generate bytecode
load byte compiled perl code
Assemble Perl bytecode
Walk basic blocks
Perl compiler's bytecode backend
Perl compiler's C backend
Perl compiler's optimized C translation backend
Disassemble Perl bytecode
Helper module for CC backend
show what stashes are loaded

Provides

in lib/B/C.pm
in lib/B/C.pm
in lib/B/Disassembler.pm
in lib/B/C.pm
in lib/B/CC.pm
in lib/B/CC.pm