diff options
author | Tim Wiederhake <tim.wiederhake@intel.com> | 2017-05-30 12:47:37 +0200 |
---|---|---|
committer | Tim Wiederhake <tim.wiederhake@intel.com> | 2017-05-30 12:49:25 +0200 |
commit | 521103fd00e593c08a6bedb619c5a9f8f7cc5a91 (patch) | |
tree | 37e04c91de562cdebf2164cbb93db2e9c4e84365 | |
parent | 17b89b34b8d7a5a8b713c92a9ebe689c6edd6798 (diff) | |
download | gdb-521103fd00e593c08a6bedb619c5a9f8f7cc5a91.zip gdb-521103fd00e593c08a6bedb619c5a9f8f7cc5a91.tar.gz gdb-521103fd00e593c08a6bedb619c5a9f8f7cc5a91.tar.bz2 |
btrace: Add btinfo to instruction interator.
This will serve as the access path to the vector of function segments once
the FUNCTION pointer in struct btrace_insn_iterator is removed.
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/btrace.c | 3 | ||||
-rw-r--r-- | gdb/btrace.h | 3 |
3 files changed, 12 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2511044..d6e5c03 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2017-05-30 Tim Wiederhake <tim.wiederhake@intel.com> + * btrace.c (btrace_insn_begin, btrace_insn_end, + btrace_find_insn_by_number): Add btinfo to iterator. + * btrace.h (struct btrace_insn_iterator): Add btinfo. + +2017-05-30 Tim Wiederhake <tim.wiederhake@intel.com> + * btrace.c (ftrace_new_function): Add btrace_thread_info to arguments and save pointers directly. (ftrace_new_call, ftrace_new_tailcall, ftrace_new_return, diff --git a/gdb/btrace.c b/gdb/btrace.c index 57788ac..c2d3730 100644 --- a/gdb/btrace.c +++ b/gdb/btrace.c @@ -2291,6 +2291,7 @@ btrace_insn_begin (struct btrace_insn_iterator *it, if (bfun == NULL) error (_("No trace.")); + it->btinfo = btinfo; it->function = bfun; it->index = 0; } @@ -2316,6 +2317,7 @@ btrace_insn_end (struct btrace_insn_iterator *it, if (length > 0) length -= 1; + it->btinfo = btinfo; it->function = bfun; it->index = length; } @@ -2519,6 +2521,7 @@ btrace_find_insn_by_number (struct btrace_insn_iterator *it, break; } + it->btinfo = btinfo; it->function = bfun; it->index = number - bfun->insn_offset; return 1; diff --git a/gdb/btrace.h b/gdb/btrace.h index ab739ec..e567ef7 100644 --- a/gdb/btrace.h +++ b/gdb/btrace.h @@ -192,6 +192,9 @@ struct btrace_function /* A branch trace instruction iterator. */ struct btrace_insn_iterator { + /* The branch trace information for this thread. Will never be NULL. */ + const struct btrace_thread_info *btinfo; + /* The branch trace function segment containing the instruction. Will never be NULL. */ const struct btrace_function *function; |