-
Notifications
You must be signed in to change notification settings - Fork 571
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
i#4083 func trace: Add func_view tool #4150
Conversation
Adds a new func_view tool for visualizing and analyzing function calls recorded in a drcachesim trace. It does two things in its initial form: it reports the summary count of calls and returns for every function traced, and if a new option op_show_func_trace is set (on by default), it prints a linear sequence of every call and return with return addresses, argument values, and return values. Each is indented to enable a clear picture of the call sequence. Adds a new option op_funclist_file to specify the file's path, though normally it will be auto-found. Adds raw2trace_directory_t support for parsing the funclist file. Adds example output for the new tool to the docs. Adds a brief section to the docs on function tracing in general, which was previously missing. Adds a func_view test which runs fib(5) and ensures we get the nested function trace correct. Fixes #4083
…warning and missing dep
Well I got the test to pass on my local Windows machine, but on Appveyor it is hitting a mysterious crash with no further information:
A crash is disturbing. But If I can't reproduce I will probably have to disable the test on Windows and put this PR in and consider the crash separately. |
…e; i#4155 covers figuring out later
Hmm, Mac is starting to have strange results. Twice now the log is truncated, but there's no timeout message, and the time is not some even number. |
A64 is #3742 threadexit2 |
Adds a new func_view tool for visualizing and analyzing function calls
recorded in a drcachesim trace. It does two things in its initial
form: it reports the summary count of calls and returns for every
function traced, and if a new option op_show_func_trace is set (on by
default), it prints a linear sequence of every call and return with
return addresses, argument values, and return values. Each is
indented to enable a clear picture of the call sequence.
Adds a new option op_funclist_file to specify the file's path, though
normally it will be auto-found.
Adds raw2trace_directory_t support for parsing the funclist file.
Adds example output for the new tool to the docs. Adds a brief
section to the docs on function tracing in general, which was
previously missing.
Adds a func_view test which runs fib(5) and ensures we get the nested
function trace correct.
Fixes #4083