shithub: riscv

ref: 217f99b1373f6d2a29a8fc05a2e065df2b926bf0
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.