diff options
author | Pavel Pisa <pisa@cmp.felk.cvut.cz> | 2019-02-11 17:45:47 +0100 |
---|---|---|
committer | Pavel Pisa <pisa@cmp.felk.cvut.cz> | 2019-02-11 17:45:47 +0100 |
commit | 10f4d52221438f0d5ce7cc72c5b6c1f6720ef5c6 (patch) | |
tree | 2bf2cf63384a5d83d29ccbd036ea8ca30a84918e /qtmips_gui/programdock.h | |
parent | 745a2aff8602a48b723a8d2ebf54b0e92cd17b30 (diff) | |
download | qtmips-10f4d52221438f0d5ce7cc72c5b6c1f6720ef5c6.tar.gz qtmips-10f4d52221438f0d5ce7cc72c5b6c1f6720ef5c6.tar.bz2 qtmips-10f4d52221438f0d5ce7cc72c5b6c1f6720ef5c6.zip |
Extend program view to support selected stage followup.
Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Diffstat (limited to 'qtmips_gui/programdock.h')
-rw-r--r-- | qtmips_gui/programdock.h | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/qtmips_gui/programdock.h b/qtmips_gui/programdock.h index 10b9df1..529730a 100644 --- a/qtmips_gui/programdock.h +++ b/qtmips_gui/programdock.h @@ -54,9 +54,29 @@ public: signals: void machine_setup(machine::QtMipsMachine *machine); void jump_to_pc(std::uint32_t); - + void focus_addr(std::uint32_t); +public slots: + void set_follow_inst(int); + void fetch_inst_addr(std::uint32_t addr); + void decode_inst_addr(std::uint32_t addr); + void execute_inst_addr(std::uint32_t addr); + void memory_inst_addr(std::uint32_t addr); + void writeback_inst_addr(std::uint32_t addr); private: + enum FollowSource { + FOLLOWSRC_NONE, + FOLLOWSRC_FETCH, + FOLLOWSRC_DECODE, + FOLLOWSRC_EXECUTE, + FOLLOWSRC_MEMORY, + FOLLOWSRC_WRITEBACK, + FOLLOWSRC_COUNT, + }; + void update_follow_position(); + enum FollowSource follow_source; + std::uint32_t follow_addr[FOLLOWSRC_COUNT]; + QSettings *settings; }; #endif // PROGRAMDOCK_H |