diff options
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 37 |
1 files changed, 37 insertions, 0 deletions
@@ -1,3 +1,40 @@ +Thu Oct 4 21:15:26 2012 Koichi Sasada <ko1@atdot.net> + + * vm.c (VM_COLLECT_USAGE_DETAILS): make new VM usage analysis + hooks (old macro name is COLLECT_USAGE_ANALYSIS). + This feature is only for VM developers. (I'm not sure I can use + `VM developers' (the plural form) in this sentence). + If VM_COLLECT_USAGE_DETAILS is not 0, VM enables the following + usage collection features: + (1) insntruction: collect intruction usages. + (2) operand: collect operand usages. + (3) register: collect register usages. + The results are stored in + RubyVM::USAGE_ANALYSIS_INSN for (1, 2), + RubyVM::USAGE_ANALYSIS_INSN_BIGRAM for (1) and + RubyVM::USAGE_ANALYSIS_REGS for (3). + You can stop collecting usages with + RubyVM::USAGE_ANALYSIS_INSN_STOP(), + RubyVM::USAGE_ANALYSIS_OPERAND_STOP(), + RubyVM::USAGE_ANALYSIS_REGISTER_STOP() + for (1), (2), (3) respectively. + You can also change the hook functions by setting + C level global variables + `ruby_vm_collect_usage_func_(insn|operand|register)' + for (1), (2), (3) respectively. + See codes for more details. + + * tool/instruction.rb: fix macro names. + + * iseq.c (insn_operand_intern): make it export (used in vm.c). + fix to skip several processes if not needed (pointer is 0). + + * vm_dump.c: move codes for collection features to vm.c. + + * vm_exec.h: rename macro and function names. + + * vm_insnhelper.h: ditto. + Thu Oct 4 18:59:14 2012 Koichi Sasada <ko1@atdot.net> * test/ruby/test_settracefunc.rb (test_tracepoint): |