kfdtest: fix trap on wave start and end

The debugger override will set the initial request mask to the
previously set request mask so use a different mask to assert
enablement.
Trap on wave start and end also run back to back, so fix the
previous override mask check as well.

In addition, unlike instruction traps, trap on wave start and end
will not require a rewind of the program counter on wave exit.
Этот коммит содержится в:
Jonathan Kim
2025-03-21 17:13:32 -04:00
коммит произвёл Kim, Jonathan
родитель d8d27d4fd6
Коммит c710a06ee0
2 изменённых файлов: 9 добавлений и 5 удалений
+5
Просмотреть файл
@@ -1130,6 +1130,11 @@ const char *TrapHandlerIsa =
s_waitcnt lgkmcnt(0)
s_mov_b32 m0, ttmp2
v_mov_b32 v4, ttmp1
.if (.amdgcn.gfx_generation_number >= 12)
s_getreg_b32 ttmp14, hwreg(HW_REG_EXCP_FLAG_PRIV)
s_and_b32 ttmp2, ttmp14, 0x300
s_cbranch_scc1 RESTORE_AND_EXIT
.endif
/* restore and increment program counter to skip shader trap jump*/
s_add_u32 ttmp0, ttmp0, 4
s_addc_u32 ttmp1, ttmp1, 0