shithub: riscv

ref: 0c6fd079ce51181e32e6625fdc85d07567991f37
dir: /sys/man/2/getcallerpc/

View raw version
.TH GETCALLERPC 2
.SH NAME
getcallerpc \- fetch return PC of current function
.SH SYNOPSIS
.br
.B #include <u.h>
.br
.B #include <libc.h>
.PP
.B uintptr getcallerpc(void *firstarg)
.SH DESCRIPTION
.I Getcallerpc
is a portable way to discover the PC to which the current function will return.
.I Firstarg
should be a pointer to the first argument to the function in question.
.SH EXAMPLE
.IP
.EX
void
printpc(int arg)
{
	print("Called from %p\en", getcallerpc(&arg));
}

void
main(int argc, char *argv[])
{
	printpc(0);
	printpc(0);
	printpc(0);
}
.EE
.SH SOURCE
.B /sys/src/libc/$objtype/getcallerpc.[cs]
.SH BUGS
The 
.I firstarg
parameter should not be necessary.