petdance/scratch — Issue #237: pbc_dump: don't skip varargs words in -d mode
Author: petdance
Created: 2011-11-01 05:41:43+00:00
State: open
Labels: Pri-normal, Sev-medium, todo, tools

See #1425 for an example of this, but when pbc_dump is running in -d mode (disassemble opcodes), it silently skips over varargs parameters to the various call support ops. An example:
{{{
0070: 00000023 00000022 set_args_pc
0076: 00000024 0000000f get_results_pc
}}}
But the pbc contains:
{{{
0070: 00000023 00000022 00000001 0000001e 00000020 00000026 00000024 0000000f
}}}
The varargs parameters (001, 01e, 020, 026) were silently omitted from the output in -d mode.

The best possible scenario would be to decode the op sufficiently to identify the meanings of the parameters -- this is P0, that is Constant-123, that is a string, etc.

But even just including the data in-line would be helpful:
{{{
0070: 00000023 00000022 set_args_pc
: 00000001 0000001e -- varargs data
: 00000020 00000026 -- varargs data
0076: 00000024 0000000f get_results_pc
}}}

Originally http://trac.parrot.org/parrot/ticket/1437