diff options
| author | Davit Grigoryan <[email protected]> | 2026-04-27 06:39:20 +0000 |
|---|---|---|
| committer | Davit Grigoryan <[email protected]> | 2026-04-27 06:39:20 +0000 |
| commit | 2e2f1c89a6b296c9cb28c8e8b0fabb670b4ba3f7 (patch) | |
| tree | 9b6e18eb4e7182ed1fa0f0f46fc3c57d40c8021d /src/abstract_hardware_model.h | |
| parent | 2f190971f5f952f55197d385c688667439bc6649 (diff) | |
fix co-issue scheduling pc assertions
Diffstat (limited to 'src/abstract_hardware_model.h')
| -rw-r--r-- | src/abstract_hardware_model.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/abstract_hardware_model.h b/src/abstract_hardware_model.h index 369459b..6ce1871 100644 --- a/src/abstract_hardware_model.h +++ b/src/abstract_hardware_model.h @@ -1508,6 +1508,18 @@ class warp_inst_t : public inst_t { unsigned get_schd_id() const { return m_scheduler_id; } active_mask_t get_warp_active_mask() const { return m_warp_active_mask; } + // Debug-only path tag for the pc==inst.pc assertion investigation. + // 0 = primary issue + // 1 = co-issue intra (same warp, sibling split) + // 2 = co-issue inter (different warp) + // 3 = co-issue MEM (mem-coissue path) + unsigned get_dbg_path() const { return m_dbg_path; } + void set_dbg_path(unsigned p) { m_dbg_path = p; } + int get_dbg_split_id() const { return m_dbg_split_id; } + void set_dbg_split_id(int s) { m_dbg_split_id = s; } + const void *get_dbg_source_inst() const { return m_dbg_source_inst; } + void set_dbg_source_inst(const void *p) { m_dbg_source_inst = p; } + protected: unsigned m_uid; unsigned long long m_streamID; @@ -1550,6 +1562,11 @@ class warp_inst_t : public inst_t { // SIMD lane partitioning data std::vector<simd_set_info> m_simd_sets; + // Debug-only fields for pc==inst.pc assertion investigation + unsigned m_dbg_path = 0; + int m_dbg_split_id = -1; + const void *m_dbg_source_inst = NULL; + // Jin: cdp support public: int m_is_cdp; |
