callgrind.c File Reference
Function call tracing tool. More...
#include <stdio.h>
#include <unistd.h>
#include <time.h>
#include <errno.h>
#include <kuroko/kuroko.h>
#include <kuroko/vm.h>
#include <kuroko/debug.h>
#include <kuroko/util.h>
#include "../src/opcode_enum.h"
#include "common.h"
Include dependency graph for callgrind.c:
Go to the source code of this file.
Data Structures | |
struct | FrameMetadata |
Functions | |
KrkValue | krk_operator_add (KrkValue a, KrkValue b) |
KrkValue | krk_operator_sub (KrkValue a, KrkValue b) |
int | krk_callgrind_debuggerHook (KrkCallFrame *frame) |
int | main (int argc, char *argv[]) |
Detailed Description
Function call tracing tool.
Generates cachegrind/callgrind trace files while running scripts.
Traces include per-line instruction execution counts and per-function (as well as per-call) wall clock timing information.
Collecting instruction counts can be quite slow, so expect this to increase runtime by as much as ~25×, depending on the code.
Definition in file callgrind.c.