]> www.infradead.org Git - users/borneoa/openocd-next.git/commit
target/breakpoints: fix types in `watchpoint_add_internal()`
authorEvgeniy Naydanov <evgeniy.naydanov@syntacore.com>
Mon, 16 Sep 2024 15:01:17 +0000 (18:01 +0300)
committerAntonio Borneo <borneo.antonio@gmail.com>
Mon, 11 Nov 2024 17:33:56 +0000 (17:33 +0000)
commitfd62626dff25cf503a25040d3040b0a2bb9b2a76
treedcd885add7996e53a7e079a9c072a67dfe1306be
parentb68d23da3c3bc67cffc750fddd64a6be9c615fdb
target/breakpoints: fix types in `watchpoint_add_internal()`

There was a conflict:
1. commit 2cd8ebf44d1a ("breakpoints: use 64-bit type for watchpoint mask
   and value")
2. commit 0bf3373e808a ("target/breakpoints: Use 'unsigned int' for
   length")

The second commit was created erlier, but merged later so the types of
`mask` and `value` became `uint32_t` in `watchpoint_add_internal()`.

This created a bug:
`WATCHPOINT_IGNORE_DATA_VALUE_MASK` is defined as `(~(uint64_t)0)`.
Truncation to uint32_t makes it so the comparisons with the constant
don't work.

Change-Id: I19c414c351f52aff72a60330d83c29db7bbca375
Signed-off-by: Evgeniy Naydanov <evgeniy.naydanov@syntacore.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/8500
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-by: Jan Matyas <jan.matyas@codasip.com>
Tested-by: jenkins
Reviewed-by: zapb <dev@zapb.de>
Reviewed-by: Karl Palsson <karlp@tweak.au>
src/target/breakpoints.c