Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [committed][gdb/testsuite] Fix gdb.reverse/consecutive-{precsave,reverse}.exp with gcc-8
@ 2020-05-06 12:49 Tom de Vries
  0 siblings, 0 replies; only message in thread
From: Tom de Vries @ 2020-05-06 12:49 UTC (permalink / raw)
  To: gdb-patches

Hi,

When running test-cases gdb.reverse/consecutive-precsave.exp and
gdb.reverse/consecutive-reverse.exp with gcc-8, we get:
...
FAIL: gdb.reverse/consecutive-precsave.exp: stopped at bp, 2nd instr
FAIL: gdb.reverse/consecutive-reverse.exp: stopped at bp, 2nd instr
...

These FAILs are duplicates of the FAILs fixed in commit 7c99e7e2b08
"[gdb/testsuite] Fix gdb.base/consecutive.exp with gcc-8".

Fix these in the same manner.

Tested on x86_64-linux.

Committed to trunk.

Thanks,
- Tom

[gdb/testsuite] Fix gdb.reverse/consecutive-{precsave,reverse}.exp with gcc-8

gdb/testsuite/ChangeLog:

2020-05-06  Tom de Vries  <tdevries@suse.de>

	* gdb.reverse/consecutive-precsave.exp: Handle if instruction after
	breakpoint is at a "recommended breakpoint location".
	* gdb.reverse/consecutive-reverse.exp: Same.

---
 gdb/testsuite/gdb.reverse/consecutive-precsave.exp | 15 ++++++++++++++-
 gdb/testsuite/gdb.reverse/consecutive-reverse.exp  | 15 ++++++++++++++-
 2 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/gdb/testsuite/gdb.reverse/consecutive-precsave.exp b/gdb/testsuite/gdb.reverse/consecutive-precsave.exp
index 9aaa1314d25..dec501d589b 100644
--- a/gdb/testsuite/gdb.reverse/consecutive-precsave.exp
+++ b/gdb/testsuite/gdb.reverse/consecutive-precsave.exp
@@ -35,6 +35,8 @@ if [supports_process_record] {
     gdb_test_no_output "record" "turn on process record"
 }
 
+set is_stmt [is_stmt_addresses $srcfile]
+
 set end_location  [gdb_get_line_number "end of main"  ]
 gdb_test "break $end_location" \
     "Breakpoint $decimal at .*$srcfile, line $end_location\." \
@@ -79,7 +81,7 @@ gdb_test "break \*$foo2_addr" "Breakpoint $decimal at $foo2_addr: file .*" \
 
 set testmsg "stopped at bp, 2nd instr"
 gdb_test_multiple "step" $testmsg {
-    -re "Breakpoint $decimal, ($hex) in foo.*$gdb_prompt $" {
+    -re -wrap "Breakpoint $decimal, ($hex) in foo.*" {
 	set stop_addr $expect_out(1,string)
 	if [eval expr "$foo2_addr == $stop_addr"] then {
 	    pass "stopped at bp, 2nd instr"
@@ -87,6 +89,17 @@ gdb_test_multiple "step" $testmsg {
 	    fail "stopped at bp, 2nd instr (wrong address)"
 	}
     }
+    -re -wrap "Breakpoint $decimal, foo.*" {
+       set stop_addr [get_valueof "/x" "\$pc" "" "value of pc"]
+       set stop_addr_is_stmt [hex_in_list $stop_addr $is_stmt]
+       if { ! $stop_addr_is_stmt } {
+           fail "stopped at bp, 2nd instr (missing hex prefix)"
+       } elseif [eval expr "$foo2_addr == $stop_addr"] then {
+           pass "stopped at bp, 2nd instr"
+       } else {
+           fail "stopped at bp, 2nd instr (wrong address)"
+       }
+    }
 }
 
 ###
diff --git a/gdb/testsuite/gdb.reverse/consecutive-reverse.exp b/gdb/testsuite/gdb.reverse/consecutive-reverse.exp
index 33834875d49..ff03e6744a4 100644
--- a/gdb/testsuite/gdb.reverse/consecutive-reverse.exp
+++ b/gdb/testsuite/gdb.reverse/consecutive-reverse.exp
@@ -33,6 +33,8 @@ if [supports_process_record] {
     gdb_test_no_output "record" "turn on process record"
 }
 
+set is_stmt [is_stmt_addresses $srcfile]
+
 gdb_breakpoint foo
 gdb_test "continue" "Breakpoint $decimal, foo .*" \
 	"continue to breakpoint in foo"
@@ -59,7 +61,7 @@ gdb_test "break \*$foo2_addr" "Breakpoint $decimal at $foo2_addr: file .*" \
 
 set testmsg "stopped at bp, 2nd instr"
 gdb_test_multiple "step" $testmsg {
-    -re "Breakpoint $decimal, ($hex) in foo.*$gdb_prompt $" {
+    -re -wrap "Breakpoint $decimal, ($hex) in foo.*" {
 	set stop_addr $expect_out(1,string)
 	if [eval expr "$foo2_addr == $stop_addr"] then {
 	    pass "stopped at bp, 2nd instr"
@@ -67,6 +69,17 @@ gdb_test_multiple "step" $testmsg {
 	    fail "stopped at bp, 2nd instr (wrong address)"
 	}
     }
+    -re -wrap "Breakpoint $decimal, foo.*" {
+       set stop_addr [get_valueof "/x" "\$pc" "" "value of pc"]
+       set stop_addr_is_stmt [hex_in_list $stop_addr $is_stmt]
+       if { ! $stop_addr_is_stmt } {
+           fail "stopped at bp, 2nd instr (missing hex prefix)"
+       } elseif [eval expr "$foo2_addr == $stop_addr"] then {
+           pass "stopped at bp, 2nd instr"
+       } else {
+           fail "stopped at bp, 2nd instr (wrong address)"
+       }
+    }
 }
 
 ###


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-05-06 12:49 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-06 12:49 [committed][gdb/testsuite] Fix gdb.reverse/consecutive-{precsave,reverse}.exp with gcc-8 Tom de Vries

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox