aboutsummaryrefslogtreecommitdiff
path: root/man/man3/getcallerpc.3
blob: 4815bc9a3cb8151e7fb612670308fe84bb4b533b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
.TH GETCALLERPC 3
.SH NAME
getcallerpc \- fetch return PC of current function
.SH SYNOPSIS
.br
.B #include <u.h>
.br
.B #include <libc.h>
.PP
.B ulong 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(ulong arg)
{
	print("Called from %.8lux\en", getcallerpc(&arg));
}

void
main(int argc, char *argv[])
{
	printpc(0);
	printpc(0);
	printpc(0);
}
.EE
.SH SOURCE
.B \*9/src/lib9/
.SH BUGS
The 
.I firstarg
parameter should not be necessary.