dump-trace: properly deal with empty extended trace entries
As dereferencing register contents is not always possible, extended trace entries may be empty. Change-Id: I603fcef2eb2b0429a9d6ed0469441bc314e365fd
This commit is contained in:
@ -107,9 +107,18 @@ int main(int argc, char *argv[])
|
|||||||
for (int i = 0; i < temp_ext.registers_size(); i++) {
|
for (int i = 0; i < temp_ext.registers_size(); i++) {
|
||||||
const Trace_Event_Extended_Registers& temp_reg = temp_ext.registers(i);
|
const Trace_Event_Extended_Registers& temp_reg = temp_ext.registers(i);
|
||||||
ext << " REG "
|
ext << " REG "
|
||||||
<< (unsigned) temp_reg.id() << " = "
|
<< (unsigned) temp_reg.id() << " = ";
|
||||||
<< (uint32_t) temp_reg.value() << " -> "
|
if (temp_reg.has_value()) {
|
||||||
<< (uint32_t) temp_reg.value_deref();
|
ext << (uint32_t) temp_reg.value();
|
||||||
|
} else {
|
||||||
|
ext << "??";
|
||||||
|
}
|
||||||
|
ext << " -> ";
|
||||||
|
if (temp_reg.has_value_deref()) {
|
||||||
|
ext << (uint32_t) temp_reg.value_deref();
|
||||||
|
} else {
|
||||||
|
ext << "??";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (temp_ext.stack_size() > 0 ) {
|
if (temp_ext.stack_size() > 0 ) {
|
||||||
ext << " STACK:";
|
ext << " STACK:";
|
||||||
|
|||||||
Reference in New Issue
Block a user