Add debugger support for wave halted at launch

New trap handler ABI: Record in ttmp11[8:7] the event that caused the
trap handler to be entered. We currently record 2 events, trap_raised
if an s_trap instruction was executed, or excp_raised if an exception
(MEM_VIOL or ILLEGAL_INST) was raised.

Change-Id: Ie278c8277437b3b67c2737dcd1a12fe6511df428
Bu işleme şunda yer alıyor:
Laurent Morichetti
2020-04-22 20:33:36 -07:00
işlemeyi yapan: Laurent Morichetti
ebeveyn 2e73d52ac6
işleme 00da82f951
2 değiştirilmiş dosya ile 66 ekleme ve 50 silme
+4 -1
Dosyayı Görüntüle
@@ -72,7 +72,10 @@ __attribute__((noinline)) static void _loader_debug_state() {
static volatile int function_needs_a_side_effect = 0;
function_needs_a_side_effect ^= 1;
}
HSA_API r_debug _amdgpu_r_debug = {1,
// r_version history:
// 1: Initial debug protocol
// 2: New trap handler ABI. The reason for halting a wave is recorded in ttmp11[8:7].
HSA_API r_debug _amdgpu_r_debug = {2,
nullptr,
reinterpret_cast<uintptr_t>(&_loader_debug_state),
r_debug::RT_CONSISTENT,