aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam
diff options
context:
space:
mode:
authorBjörn Gustavsson <bjorn@erlang.org>2012-03-21 10:42:19 +0100
committerPatrik Nyblom <pan@erlang.org>2012-03-22 18:16:16 +0100
commit654983b39f9aaaf2297ab1cd4b60243ea119bcdb (patch)
tree546314c55ab46790ae7db57fc240a19918a5327b /erts/emulator/beam
parent062b599f16ff74e0ae6495b09df85bfd8560afdc (diff)
downloadotp-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.h24
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 */