aboutsummaryrefslogtreecommitdiff
path: root/src/target/aarch64.c
diff options
context:
space:
mode:
authorMatthias Welwarsky <matthias.welwarsky@sysgo.com>2016-09-16 13:46:08 +0200
committerMatthias Welwarsky <matthias.welwarsky@sysgo.com>2017-02-10 14:01:39 +0100
commit4246fac240eb28e5a28112b71fc0b5f911e6c922 (patch)
tree140130da1def7785b88c7cb15cba2140e8627e84 /src/target/aarch64.c
parentdf7069af556bd9601ec293a87e8465fb713b3a06 (diff)
aarch64: use correct instruction for software breakpoints
External debuggers need to use HLT, not BRK. HLT generates a halting debug event while BRK generates a debug exception for self-hosted debugging. Change-Id: I24024b83668107f73a14cc75d951134917269e5c Signed-off-by: Matthias Welwarsky <matthias.welwarsky@sysgo.com>
Diffstat (limited to 'src/target/aarch64.c')
-rw-r--r--src/target/aarch64.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/target/aarch64.c b/src/target/aarch64.c
index b1534e36..d38e0428 100644
--- a/src/target/aarch64.c
+++ b/src/target/aarch64.c
@@ -1369,7 +1369,7 @@ static int aarch64_set_breakpoint(struct target *target,
} else if (breakpoint->type == BKPT_SOFT) {
uint8_t code[4];
- buf_set_u32(code, 0, 32, ARMV8_BKPT(0x11));
+ buf_set_u32(code, 0, 32, ARMV8_HLT(0x11));
retval = target_read_memory(target,
breakpoint->address & 0xFFFFFFFFFFFFFFFE,
breakpoint->length, 1,