diff options
Diffstat (limited to 'man/man3/getcallerpc.3')
-rw-r--r-- | man/man3/getcallerpc.3 | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/man/man3/getcallerpc.3 b/man/man3/getcallerpc.3 new file mode 100644 index 00000000..8fc86d8c --- /dev/null +++ b/man/man3/getcallerpc.3 @@ -0,0 +1,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 /sys/src/libc/$objtype/getcallerpc.[cs] +.SH BUGS +The +.I firstarg +parameter should not be necessary. |