mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-19 06:24:51 +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:
|
case ZET_DEBUG_REGSET_TYPE_SP_INTEL_GPU:
|
||||||
return &pStateSaveAreaHeader->regHeader.sp;
|
return &pStateSaveAreaHeader->regHeader.sp;
|
||||||
case ZET_DEBUG_REGSET_TYPE_DBG_INTEL_GPU:
|
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:
|
case ZET_DEBUG_REGSET_TYPE_FC_INTEL_GPU:
|
||||||
return &pStateSaveAreaHeader->regHeader.fc;
|
return &pStateSaveAreaHeader->regHeader.fc;
|
||||||
case ZET_DEBUG_REGSET_TYPE_SBA_INTEL_GPU:
|
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(*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);
|
parseRegsetDesc(pStateSaveArea->regHeader.fc, ZET_DEBUG_REGSET_TYPE_FC_INTEL_GPU);
|
||||||
|
|
||||||
if (!*pCount || (*pCount > totalRegsetNum)) {
|
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_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_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_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_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);
|
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[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[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[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);
|
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
|
2, // major
|
||||||
0, // minor
|
0, // minor
|
||||||
0}, // patch
|
0}, // patch
|
||||||
40, // size
|
44, // size
|
||||||
{0, 0, 0}, // reserved2
|
{0, 0, 0}, // reserved2
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -120,17 +120,20 @@ std::vector<char> createStateSaveAreaHeader(uint32_t version, uint16_t grfNum, u
|
|||||||
{4640, 1, 128, 16}, // tm
|
{4640, 1, 128, 16}, // tm
|
||||||
{0, 1, 32, 4}, // fc
|
{0, 1, 32, 4}, // fc
|
||||||
{4736, 1, 32, 4}, // dbg
|
{4736, 1, 32, 4}, // dbg
|
||||||
|
{4744, 1, 64, 8}, // ctx
|
||||||
|
{4752, 1, 64, 8}, // dbg_reg
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
char *begin = nullptr;
|
char *begin = nullptr;
|
||||||
|
unsigned long sizeOfHeader = 0u;
|
||||||
if (version == 1) {
|
if (version == 1) {
|
||||||
begin = reinterpret_cast<char *>(&stateSaveAreaHeader);
|
begin = reinterpret_cast<char *>(&stateSaveAreaHeader);
|
||||||
|
sizeOfHeader = offsetof(SIP::StateSaveAreaHeader, regHeader.dbg) + sizeof(SIP::StateSaveAreaHeader::regHeader.dbg);
|
||||||
} else if (version == 2) {
|
} else if (version == 2) {
|
||||||
begin = reinterpret_cast<char *>(&stateSaveAreaHeader2);
|
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);
|
return std::vector<char>(begin, begin + sizeOfHeader);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user