return zero in arm_linux_can_use_hw_breakpoint if HW point isn't supported
authorYao Qi <yao.qi@linaro.org>
Fri, 17 Apr 2015 12:52:44 +0000 (13:52 +0100)
committerYao Qi <yao.qi@linaro.org>
Fri, 17 Apr 2015 12:52:44 +0000 (13:52 +0100)
commitdbbf180a8176d59eb04d20a681c0e77e2b0551a5
tree819218a3aa36cbb8d6abcfdbca6d4f1db1c2b5f3
parent059790a0c8f4672da9ed5a6289d1fd9edc0f169f
return zero in arm_linux_can_use_hw_breakpoint if HW point isn't supported

This patch is to cherry-pick part of Pedro's patch here
https://sourceware.org/ml/gdb-patches/2015-04/msg00527.html in which
zero is returned if the HW point isn't supported.

In arm-linux native gdb testing on a board doesn't support HW breakpoint,
without this patch, the output in gdb.base/breakpoint-in-ro-region.exp is like:

(gdb) hbreak *0x83bc^M
Hardware breakpoints used exceeds limit.^M
(gdb) PASS: gdb.base/breakpoint-in-ro-region.exp: probe hbreak support (support)

with this patch, the output becomes:

(gdb) hbreak *0x83bc^M
No hardware breakpoint support in the target.^M
(gdb) PASS: gdb.base/breakpoint-in-ro-region.exp: probe hbreak support (no support)

As a result, the following fails are fixed.

-FAIL: gdb.base/breakpoint-in-ro-region.exp: always-inserted off: auto-hw on: step in ro region (cannot insert hw break)
-FAIL: gdb.base/breakpoint-in-ro-region.exp: always-inserted off: auto-hw on: thread advanced
-FAIL: gdb.base/breakpoint-in-ro-region.exp: always-inserted on: auto-hw on: step in ro region (cannot insert hw break)
-FAIL: gdb.base/breakpoint-in-ro-region.exp: always-inserted on: auto-hw on: thread advanced

gdb:

2015-04-17  Pedro Alves  <palves@redhat.com>

* arm-linux-nat.c (arm_linux_can_use_hw_breakpoint): Return zero
if HW point of TYPE isn't supported.
gdb/ChangeLog
gdb/arm-linux-nat.c