2009-04-28から1日間の記事一覧

Perlの最適化 - aelemfast

先の記事のOpcodeトレース(APVM版)に以下のようなOpcodeがあった。 .aelemfast[@ARGV[0]] SCALARこれはPerlの最適化器*1が最適化の結果生成したOpcodeで,配列の添え字が定数かつ255以下のときにOpcodeのaelemから変換されるものだ。 もともとのaelemは,配…

Opcodeのトレース

Perlを-DDEBUGGINGつきでビルドするとPerl本体にOpcodeトレース機能が付く。 $ perl -Dts -e 'print "Hello, $ARGV[0] world\n"' Perl EXECUTING... => (-e:0) enter => (-e:0) nextstate => (-e:1) pushmark => * (-e:1) const(PV("Hello, "\0)) => * PV("H…