diff --git a/src/target/arm_semihosting.c b/src/target/arm_semihosting.c index 1e5b5e252..792474acf 100644 --- a/src/target/arm_semihosting.c +++ b/src/target/arm_semihosting.c @@ -315,7 +315,7 @@ int arm_semihosting(struct target *target, int *retval) return 0; } else if (arm->core_state == ARM_STATE_ARM) { r = arm->pc; - pc = buf_get_u32(arm->pc->value, 0, 32); + pc = buf_get_u32(r->value, 0, 32); /* A32 instruction => check for HLT 0xF000 (0xE10F0070) */ uint32_t insn = 0; @@ -330,7 +330,7 @@ int arm_semihosting(struct target *target, int *retval) return 0; } else if (arm->core_state == ARM_STATE_THUMB) { r = arm->pc; - pc = buf_get_u32(arm->pc->value, 0, 32); + pc = buf_get_u32(r->value, 0, 32); /* T32 instruction => check for HLT 0x3C (0xBABC) */ uint16_t insn = 0;