mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-18 13:54:58 +08:00
feature(debugger): Expose DBG regset
Related-To: NEO-8383 Signed-off-by: Brandon Yates <brandon.yates@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
97b8cac1d1
commit
b3464a2621
@@ -1037,7 +1037,7 @@ const SIP::regset_desc *DebugSessionImp::typeToRegsetDesc(uint32_t type) {
|
||||
case ZET_DEBUG_REGSET_TYPE_SP_INTEL_GPU:
|
||||
return &pStateSaveAreaHeader->regHeader.sp;
|
||||
case ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU:
|
||||
return &pStateSaveAreaHeader->regHeader.dbg;
|
||||
return &pStateSaveAreaHeader->regHeader.dbg_reg;
|
||||
case ZET_DEBUG_REGSET_TYPE_FC_INTEL_GPU:
|
||||
return &pStateSaveAreaHeader->regHeader.fc;
|
||||
case ZET_DEBUG_REGSET_TYPE_SBA_INTEL_GPU:
|
||||
@@ -1272,7 +1272,7 @@ 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);
|
||||
parseRegsetDesc(pStateSaveArea->regHeader.dbg_reg, ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU);
|
||||
parseRegsetDesc(pStateSaveArea->regHeader.fc, ZET_DEBUG_REGSET_TYPE_FC_INTEL_GPU);
|
||||
|
||||
if (!*pCount || (*pCount > totalRegsetNum)) {
|
||||
|
||||
@@ -2283,7 +2283,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_EQ(session->typeToRegsetDesc(ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU), &pStateSaveAreaHeader->regHeader.dbg_reg);
|
||||
EXPECT_EQ(session->typeToRegsetDesc(ZET_DEBUG_REGSET_TYPE_FC_INTEL_GPU), &pStateSaveAreaHeader->regHeader.fc);
|
||||
EXPECT_NE(session->typeToRegsetDesc(ZET_DEBUG_REGSET_TYPE_SBA_INTEL_GPU), nullptr);
|
||||
}
|
||||
|
||||
@@ -386,7 +386,7 @@ TEST_F(DebugApiTest, givenGetRegisterSetPropertiesCalledCorrectPropertiesReturne
|
||||
validateRegsetProps(regsetProps[8], ZET_DEBUG_REGSET_TYPE_MME_INTEL_GPU, ZET_DEBUG_REGSET_FLAG_READABLE | ZET_DEBUG_REGSET_FLAG_WRITEABLE, 1, 256, 32);
|
||||
validateRegsetProps(regsetProps[9], ZET_DEBUG_REGSET_TYPE_SP_INTEL_GPU, ZET_DEBUG_REGSET_FLAG_READABLE | ZET_DEBUG_REGSET_FLAG_WRITEABLE, 1, 128, 16);
|
||||
validateRegsetProps(regsetProps[10], ZET_DEBUG_REGSET_TYPE_SBA_INTEL_GPU, ZET_DEBUG_REGSET_FLAG_READABLE, ZET_DEBUG_SBA_COUNT_INTEL_GPU, 64, 8);
|
||||
validateRegsetProps(regsetProps[11], ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU, ZET_DEBUG_REGSET_FLAG_READABLE | ZET_DEBUG_REGSET_FLAG_WRITEABLE, 1, 32, 4);
|
||||
validateRegsetProps(regsetProps[11], ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU, ZET_DEBUG_REGSET_FLAG_READABLE | ZET_DEBUG_REGSET_FLAG_WRITEABLE, 1, 64, 8);
|
||||
validateRegsetProps(regsetProps[12], ZET_DEBUG_REGSET_TYPE_FC_INTEL_GPU, ZET_DEBUG_REGSET_FLAG_READABLE | ZET_DEBUG_REGSET_FLAG_WRITEABLE, 1, 32, 4);
|
||||
}
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@ std::vector<char> createStateSaveAreaHeader(uint32_t version, uint16_t grfNum, u
|
||||
2, // major
|
||||
0, // minor
|
||||
0}, // patch
|
||||
40, // size
|
||||
44, // size
|
||||
{0, 0, 0}, // reserved2
|
||||
},
|
||||
{
|
||||
@@ -120,17 +120,20 @@ std::vector<char> createStateSaveAreaHeader(uint32_t version, uint16_t grfNum, u
|
||||
{4640, 1, 128, 16}, // tm
|
||||
{0, 1, 32, 4}, // fc
|
||||
{4736, 1, 32, 4}, // dbg
|
||||
{4744, 1, 64, 8}, // ctx
|
||||
{4752, 1, 64, 8}, // dbg_reg
|
||||
},
|
||||
};
|
||||
|
||||
char *begin = nullptr;
|
||||
|
||||
unsigned long sizeOfHeader = 0u;
|
||||
if (version == 1) {
|
||||
begin = reinterpret_cast<char *>(&stateSaveAreaHeader);
|
||||
sizeOfHeader = offsetof(SIP::StateSaveAreaHeader, regHeader.dbg) + sizeof(SIP::StateSaveAreaHeader::regHeader.dbg);
|
||||
} else if (version == 2) {
|
||||
begin = reinterpret_cast<char *>(&stateSaveAreaHeader2);
|
||||
sizeOfHeader = offsetof(SIP::StateSaveAreaHeader, regHeader.dbg_reg) + sizeof(SIP::StateSaveAreaHeader::regHeader.dbg_reg);
|
||||
}
|
||||
auto sizeOfHeader = offsetof(SIP::StateSaveAreaHeader, regHeader.dbg) + sizeof(SIP::StateSaveAreaHeader::regHeader.dbg);
|
||||
|
||||
return std::vector<char>(begin, begin + sizeOfHeader);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user