mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-05 09:09:04 +08:00
Debugger L0: expose DBG register set
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
14948d3f7c
commit
7aa053199d
@@ -759,6 +759,8 @@ const SIP::regset_desc *DebugSessionImp::typeToRegsetDesc(uint32_t type) {
|
||||
return &pStateSaveAreaHeader->regHeader.mme;
|
||||
case ZET_DEBUG_REGSET_TYPE_SP_INTEL_GPU:
|
||||
return &pStateSaveAreaHeader->regHeader.sp;
|
||||
case ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU:
|
||||
return &pStateSaveAreaHeader->regHeader.dbg;
|
||||
case ZET_DEBUG_REGSET_TYPE_SBA_INTEL_GPU:
|
||||
return DebugSessionImp::getSbaRegsetDesc();
|
||||
default:
|
||||
@@ -783,6 +785,7 @@ uint32_t DebugSessionImp::typeToRegsetFlags(uint32_t type) {
|
||||
case ZET_DEBUG_REGSET_TYPE_CR_INTEL_GPU:
|
||||
case ZET_DEBUG_REGSET_TYPE_ACC_INTEL_GPU:
|
||||
case ZET_DEBUG_REGSET_TYPE_SP_INTEL_GPU:
|
||||
case ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU:
|
||||
return ZET_DEBUG_REGSET_FLAG_READABLE | ZET_DEBUG_REGSET_FLAG_WRITEABLE;
|
||||
|
||||
case ZET_DEBUG_REGSET_TYPE_CE_INTEL_GPU:
|
||||
@@ -934,6 +937,8 @@ ze_result_t DebugSession::getRegisterSetProperties(Device *device, uint32_t *pCo
|
||||
|
||||
parseRegsetDesc(*DebugSessionImp::getSbaRegsetDesc(), ZET_DEBUG_REGSET_TYPE_SBA_INTEL_GPU);
|
||||
|
||||
parseRegsetDesc(pStateSaveArea->regHeader.dbg, ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU);
|
||||
|
||||
if (!*pCount || (*pCount > totalRegsetNum)) {
|
||||
*pCount = totalRegsetNum;
|
||||
}
|
||||
|
||||
@@ -1715,6 +1715,7 @@ TEST_F(DebugSessionRegistersAccessTest, givenTypeToRegsetDescCalledThenCorrectRe
|
||||
EXPECT_EQ(session->typeToRegsetDesc(ZET_DEBUG_REGSET_TYPE_ACC_INTEL_GPU), &pStateSaveAreaHeader->regHeader.acc);
|
||||
EXPECT_EQ(session->typeToRegsetDesc(ZET_DEBUG_REGSET_TYPE_MME_INTEL_GPU), &pStateSaveAreaHeader->regHeader.mme);
|
||||
EXPECT_EQ(session->typeToRegsetDesc(ZET_DEBUG_REGSET_TYPE_SP_INTEL_GPU), &pStateSaveAreaHeader->regHeader.sp);
|
||||
EXPECT_EQ(session->typeToRegsetDesc(ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU), &pStateSaveAreaHeader->regHeader.dbg);
|
||||
EXPECT_NE(session->typeToRegsetDesc(ZET_DEBUG_REGSET_TYPE_SBA_INTEL_GPU), nullptr);
|
||||
}
|
||||
|
||||
|
||||
@@ -206,14 +206,14 @@ TEST_F(DebugApiTest, givenNullCountPointerWhenGetRegisterSetPropertiesCalledThen
|
||||
TEST_F(DebugApiTest, givenZeroCountWhenGetRegisterSetPropertiesCalledThenCorrectCountIsSet) {
|
||||
uint32_t count = 0;
|
||||
EXPECT_EQ(ZE_RESULT_SUCCESS, zetDebugGetRegisterSetProperties(device->toHandle(), &count, nullptr));
|
||||
EXPECT_EQ(10u, count);
|
||||
EXPECT_EQ(11u, count);
|
||||
}
|
||||
|
||||
TEST_F(DebugApiTest, givenGetRegisterSetPropertiesCalledAndExtraSpaceIsProvidedThenCorrectPropertiesReturned) {
|
||||
uint32_t count = 100;
|
||||
std::vector<zet_debug_regset_properties_t> regsetProps(count);
|
||||
EXPECT_EQ(ZE_RESULT_SUCCESS, zetDebugGetRegisterSetProperties(device->toHandle(), &count, regsetProps.data()));
|
||||
EXPECT_EQ(10u, count);
|
||||
EXPECT_EQ(11u, count);
|
||||
}
|
||||
|
||||
TEST_F(DebugApiTest, givenNoStateSaveHeaderWhenGettingRegSetPropertiesThenZeroCountIsReturned) {
|
||||
@@ -234,12 +234,12 @@ TEST_F(DebugApiTest, givenNonZeroCountAndNullRegsetPointerWhenGetRegisterSetProp
|
||||
TEST_F(DebugApiTest, givenGetRegisterSetPropertiesCalledCorrectPropertiesReturned) {
|
||||
uint32_t count = 0;
|
||||
EXPECT_EQ(ZE_RESULT_SUCCESS, zetDebugGetRegisterSetProperties(device->toHandle(), &count, nullptr));
|
||||
EXPECT_EQ(10u, count);
|
||||
EXPECT_EQ(11u, count);
|
||||
|
||||
std::vector<zet_debug_regset_properties_t> regsetProps(count);
|
||||
EXPECT_EQ(ZE_RESULT_SUCCESS, zetDebugGetRegisterSetProperties(device->toHandle(), &count, regsetProps.data()));
|
||||
|
||||
EXPECT_EQ(10u, count);
|
||||
EXPECT_EQ(11u, count);
|
||||
|
||||
auto validateRegsetProps = [](const zet_debug_regset_properties_t ®setProps,
|
||||
zet_debug_regset_type_intel_gpu_t type, zet_debug_regset_flags_t flags,
|
||||
@@ -265,6 +265,8 @@ TEST_F(DebugApiTest, givenGetRegisterSetPropertiesCalledCorrectPropertiesReturne
|
||||
// MME is not present
|
||||
validateRegsetProps(regsetProps[8], ZET_DEBUG_REGSET_TYPE_SP_INTEL_GPU, ZET_DEBUG_REGSET_FLAG_READABLE | ZET_DEBUG_REGSET_FLAG_WRITEABLE, 1, 128, 16);
|
||||
validateRegsetProps(regsetProps[9], ZET_DEBUG_REGSET_TYPE_SBA_INTEL_GPU, ZET_DEBUG_REGSET_FLAG_READABLE, ZET_DEBUG_SBA_COUNT_INTEL_GPU, 64, 8);
|
||||
// FC is not present
|
||||
validateRegsetProps(regsetProps[10], ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU, ZET_DEBUG_REGSET_FLAG_READABLE | ZET_DEBUG_REGSET_FLAG_WRITEABLE, 1, 32, 4);
|
||||
}
|
||||
|
||||
TEST(DebugSessionTest, givenDebugSessionWhenConvertingToAndFromHandleCorrectHandleAndPointerIsReturned) {
|
||||
|
||||
Reference in New Issue
Block a user