[PATCH 2/2] watchpoint-reuse-slot.exp: skip when requesting two breakpoints in one slot on aarch64
Yao Qi
qiyaoltc@gmail.com
Fri Mar 13 14:41:00 GMT 2015
From: Yao Qi <yao.qi@linaro.org>
watchpoint-reuse-slot.exp sets two hardware breakpoints in contiguous
address to reuse one debug register. However, requested address for
breakpoint should be 4-byte aligned on aarch64, so it is impossible
to request two hardware breakpoints and use one debug register. This
patch is to skip the test in the case on aarch64-linux. Since arm
has Thumb mode, in which instruction address can be 2-byte aligned,
more thoughts are needed for arm in my next step.
gdb/testsuite:
2015-03-13 Yao Qi <yao.qi@linaro.org>
* gdb.base/watchpoint-reuse-slot.exp: Skip tests when two
breakpoints are requested on aarch64-linux.
---
gdb/testsuite/gdb.base/watchpoint-reuse-slot.exp | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/gdb/testsuite/gdb.base/watchpoint-reuse-slot.exp b/gdb/testsuite/gdb.base/watchpoint-reuse-slot.exp
index df6eeb6..c646f22 100644
--- a/gdb/testsuite/gdb.base/watchpoint-reuse-slot.exp
+++ b/gdb/testsuite/gdb.base/watchpoint-reuse-slot.exp
@@ -178,10 +178,18 @@ foreach always_inserted {"off" "on" } {
foreach cmd2 $cmds {
for {set width 1} {$width < 4} {incr width} {
- if {$cmd1 == "hbreak" && $cmd2 == "hbreak" && $width > 1} {
- # hbreak ignores WIDTH, no use testing more than
- # once.
- continue
+ if {$cmd1 == "hbreak" && $cmd2 == "hbreak"} {
+ if {$width > 1} {
+ # hbreak ignores WIDTH, no use testing more than
+ # once.
+ continue
+ }
+
+ if { [istarget "aarch64*-*-linux*"] } {
+ # The address for breakpoint should be 4-byte
+ # aligned, so can't reuse slot.
+ continue
+ }
}
if {($cmd1 == "hbreak" && $cmd2 != "hbreak"
--
1.9.1
More information about the Gdb-patches
mailing list