NAME ^

src/trace.c - Tracing

DESCRIPTION ^

Tracing support for the runops_slow_core() function in src/runops_cores.c.

This is turned on with Parrot's -t option.

src/test_main.c

Functions ^

PARROT_WARN_UNUSED_RESULT PARROT_CANNOT_RETURN_NULL static STRING *trace_class_name(NOTNULL(const PMC *pmc))

Obtains the class name of the PMC.

void trace_pmc_dump(PARROT_INTERP, NOTNULL(PMC *pmc))

Prints a PMC to stderr.

int trace_key_dump(PARROT_INTERP, NOTNULL(const PMC *key))

Prints a key to stderr, returns the length of the output.

void trace_op_dump(PARROT_INTERP, NOTNULL(const opcode_t *code_start), NOTNULL(const opcode_t *pc))

TODO: This isn't really part of the API, but here's its documentation.

Prints the PC, OP and ARGS. Used by trace_op().

void trace_op(PARROT_INTERP, NOTNULL(const opcode_t *code_start), NOTNULL(const opcode_t *code_end), NULLOK(const opcode_t *pc))

TODO: This isn't really part of the API, but here's its documentation.

Prints the PC, OP and ARGS. Used by runops_trace(). With bounds checking.

SEE ALSO ^

src/trace.h


parrot