The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 1.54 - 2016-02-26

  • cperl fixes and 5.22 memory improvements. cperl now also supported, even included CORE, but ByteLoader still broken.
  • C: Fix defined for RV since 5.20 and ithreads (#354) Fix anon functions in INIT block (#352) (atoomic) and more const CV fixes. Fix C.xs for old non-c99 compilers. i.e. msvc6 Fix segfault from PVMG (#348) (atoomic), regression added for match once Fix stack corruption in HV::ENAMES (#351) Fix SEGV with empty get_cv(), esp. from non-XS functions (#358) Fixed 5.22 padname length limitation of max 60. Also using less memory. (#361) New -O2 option -fcow since 5.20 to cow most static strings with ~6% memory savings (#361) Support cperl5.22.2 with AvSTATIC and AvIsCOW. ~6% less memory. (#361) Support cperl5.22.2 with HEK_STATIC. ~6% less memory. (#361) cperl fixes for DynaLoader, XSLoader improvements (#363), -O3 destruction.
  • B::C::Flags: renamed to B::C::Config
  • bytecode.pl: support cperl bootstrapping with miniperl in CORE
  • Asmdata (1.04): with cperl in CORE @optype @specialsv_name are defined here also. Cannot load B with miniperl.

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
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
Autogenerated data about Perl ops, used to generate bytecode
load byte compiled perl code
show what stashes are loaded
Assemble Perl bytecode
Walk basic blocks
Perl compiler's bytecode backend
Perl 5.6 compiler's bytecode backend
Perl compiler's C backend
Perl compiler's optimized C translation backend
Disassemble Perl bytecode
Stack and type annotation helper module for the CC backend

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/C.pm
in lib/B/CC.pm