c3a2e91
/*
c3a2e91
   This probe will fire when the perl script enters a subroutine.
c3a2e91
 */
c3a2e91
c3a2e91
probe perl.sub.call = process("LIBRARY_PATH").mark("sub__entry")
c3a2e91
{
c3a2e91
c3a2e91
  sub = user_string($arg1)
c3a2e91
  filename = user_string($arg2)
c3a2e91
  lineno = $arg3
c3a2e91
  package = user_string($arg4)
c3a2e91
c3a2e91
}
c3a2e91
6f6f8fd
/*
6f6f8fd
   This probe will fire when the return from a subroutine has been
6f6f8fd
   hit.
c3a2e91
 */
c3a2e91
c3a2e91
probe perl.sub.return = process("LIBRARY_PATH").mark("sub__return")
c3a2e91
{
c3a2e91
c3a2e91
  sub = user_string($arg1)
c3a2e91
  filename = user_string($arg2)
c3a2e91
  lineno = $arg3
c3a2e91
  package = user_string($arg4)
c3a2e91
c3a2e91
}
c3a2e91
6f6f8fd
/*
c3a2e91
   This probe will fire when the Perl interperter changes state.
c3a2e91
 */
c3a2e91
c3a2e91
probe perl.phase.change = process("LIBRARY_PATH").mark("phase__change")
c3a2e91
{
c3a2e91
  newphase = user_string($arg1)
c3a2e91
  oldphase = user_string($arg2)
6f6f8fd
6f6f8fd
}
6f6f8fd
6f6f8fd
6f6f8fd
/*
6f6f8fd
   Fires when Perl has successfully loaded an individual file.
6f6f8fd
 */
6f6f8fd
6f6f8fd
probe perl.loaded.file = process("LIBRARY_PATH").mark("loaded__file")
6f6f8fd
{
6f6f8fd
  filename = user_string($arg1)
6f6f8fd
6f6f8fd
}
6f6f8fd
6f6f8fd
6f6f8fd
/*
6f6f8fd
   Fires when Perl is about to load an individual file.
6f6f8fd
 */
6f6f8fd
6f6f8fd
probe perl.loading.file = process("LIBRARY_PATH").mark("loading__file")
6f6f8fd
{
6f6f8fd
  filename = user_string($arg1)
6f6f8fd
6f6f8fd
}
6f6f8fd
6f6f8fd
6f6f8fd
/*
6f6f8fd
   Traces the execution of each opcode in the Perl runloop.
6f6f8fd
 */
6f6f8fd
6f6f8fd
probe perl.op.entry = process("LIBRARY_PATH").mark("op__entry")
6f6f8fd
{
6f6f8fd
  opname = user_string($arg1)
c3a2e91
}