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

Changes for version 1.36 - 2011-10-19

  • lexical warnings and more 5.15 fixes
  • C: new B::LEXWARN, fixed representation of lexical warnings which was broken since 8e01d9a6 5.8.9/5.9.4 (issue 76) added section free, use it for lexical cop_warnings (const STRLEN*) (TODO: static PV, HEK + COPs) workaround for utf8::SWASHNEW adjusted to 5.15 PAD* sv flags changed in 5.15.3 XSLoader API changed (HEK in caller i.e.): had to add a XSLoader::load_file for [perl #101336] >= 5.15.3, also use mXPUSH for sp instead of 1-arg targ Set SvLEN=0 for static PVs to skip sv_clear (problem with 13) Handle overlarge negative 64bit ints, double not yet. Move -fwarn-sv from -O2 to -O1 Move -fsave-data from -O3 to -O2 Compile *main::DATA IO handle automatically (__DATA__), just package __DATA__ handles need -fsave-data (15) Die with 5.8.4/5.8.5 threaded with split->pushre on invalid pmreplroot. This is a core B::walkoptree bug and can not be easily fixed. Tests 15 and 103 do not hang anymore, 15 and 29 pass mostly
  • C.xs: added -Dts support to runloop to check internal compiler problems
  • t/issue76.t: added

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
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
Stack and type annotation helper module for the 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
in lib/B/CC.pm
int
in lib/B/CC.pm