This patch enables LLDB to use a single hardware watchpoint slot to watch multiple bytes or half words.
For example:
instead of using 4 different hardware watchpoint slots to watch 1 byte at 0x0040, 0x0041, 0x0042 and 0x0043. We are now able to use 1 hardware watchpoint slot to watch all 4 of these single byte watchpoints. Similarly for two consecutive half words we can use a single slot.
Arm has 4 hardware watchpoint slots and this patch optimizes the use of those slots wherever possible.
I have made necessary changes to watchpointSizeTests to capture this change.
I am working on similar patch for AArch64.
It's not clear to me why you need to modify the existing test for this change. You are adding functionality, so all existing tests should pass as-is (which will also validate that your change did not introduce regressions).