diff options
author | Björn Gustavsson <[email protected]> | 2012-03-21 10:42:19 +0100 |
---|---|---|
committer | Patrik Nyblom <[email protected]> | 2012-03-22 18:16:16 +0100 |
commit | 654983b39f9aaaf2297ab1cd4b60243ea119bcdb (patch) | |
tree | 546314c55ab46790ae7db57fc240a19918a5327b /erts/emulator/beam | |
parent | 062b599f16ff74e0ae6495b09df85bfd8560afdc (diff) | |
download | otp-654983b39f9aaaf2297ab1cd4b60243ea119bcdb.tar.gz otp-654983b39f9aaaf2297ab1cd4b60243ea119bcdb.tar.bz2 otp-654983b39f9aaaf2297ab1cd4b60243ea119bcdb.zip |
Don't try to "clean up" generated fun names
The fun names may look ugly, but if we clean them up we can't
distinguish calls to the function defining the fun and to the
fun itself.
Diffstat (limited to 'erts/emulator/beam')
-rw-r--r-- | erts/emulator/beam/global.h | 24 |
1 files changed, 2 insertions, 22 deletions
diff --git a/erts/emulator/beam/global.h b/erts/emulator/beam/global.h index 7f12004b43..b000e2c5d4 100644 --- a/erts/emulator/beam/global.h +++ b/erts/emulator/beam/global.h @@ -2007,32 +2007,12 @@ dtrace_fun_decode(Process *process, Eterm module, Eterm function, int arity, char *process_buf, char *mfa_buf) { - char funbuf[DTRACE_TERM_BUF_SIZE]; - char *funptr = funbuf; - char *p = NULL; - if (process_buf) { dtrace_proc_str(process, process_buf); } - erts_snprintf(funbuf, sizeof(funbuf), "%T", function); - /* - * I'm not quite sure how these function names are synthesized, - * but they almost always seem to be in the form of - * '-name/arity-fun-0-' so I'm chopping them up when it's -fun-0- - * (which seems to be the toplevel) - */ - if (funbuf[0] == '\'' && funbuf[1] == '-' - && strlen(funbuf) > 3 && funbuf[strlen(funbuf) - 3] == '0') { - p = strchr(funbuf, '/'); - if (p) { - *p = 0; - } - funptr += 2; - } - - erts_snprintf(mfa_buf, DTRACE_TERM_BUF_SIZE, "%T:%s/%d", - module, funptr, arity); + erts_snprintf(mfa_buf, DTRACE_TERM_BUF_SIZE, "%T:%T/%d", + module, function, arity); } #endif /* #if ERTS_GLB_INLINE_INCL_FUNC_DEF */ |