[pushed,gdb/testsuite] Fix gdb.guile/scm-symtab.exp for ppc64le

Message ID 20221209094237.3736-1-tdevries@suse.de
State Committed
Commit 8b272d7671fb9af34fe14bd274e97f05bb299635
Headers
Series [pushed,gdb/testsuite] Fix gdb.guile/scm-symtab.exp for ppc64le |

Commit Message

Tom de Vries Dec. 9, 2022, 9:42 a.m. UTC
  On powerpc64le-linux, I run into:
...
(gdb) PASS: gdb.guile/scm-symtab.exp: step out of func2
guile (print (> (sal-line (find-pc-line (frame-pc (selected-frame)))) line))^M
= #f^M
(gdb) FAIL: gdb.guile/scm-symtab.exp: test find-pc-line with resume address
...

The problem is as follows: the instructions for the call to func2 are:
...
    1000070c:   39 00 00 48     bl      10000744 <func1>
    10000710:   00 00 00 60     nop
    10000714:   59 00 00 48     bl      1000076c <func2>
    10000718:   00 00 00 60     nop
    1000071c:   00 00 20 39     li      r9,0
...
and the corresponding line number info is:
...
scm-symtab.c:
File name     Line number    Starting address    View    Stmt
scm-symtab.c           42          0x1000070c               x
scm-symtab.c           43          0x10000714               x
scm-symtab.c           44          0x1000071c               x
...

The test-case looks at the line numbers for two insns:
- the insn of the call to func2 (0x10000714), and
- the insn after that (0x10000718),
and expects the line number of the latter to be greater than the line number
of the former.

However, both insns have the same line number: 43.

Fix this by replacing ">" with ">=".

Tested on x86_64-linux and powerpc64le-linux.
---
 gdb/testsuite/gdb.guile/scm-symtab.exp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


base-commit: cd3866b6d07b37258eb840443537baa163877e24
  

Patch

diff --git a/gdb/testsuite/gdb.guile/scm-symtab.exp b/gdb/testsuite/gdb.guile/scm-symtab.exp
index 2ea13ff0d6c..4b8b59c42de 100644
--- a/gdb/testsuite/gdb.guile/scm-symtab.exp
+++ b/gdb/testsuite/gdb.guile/scm-symtab.exp
@@ -153,5 +153,5 @@  gdb_test "guile (print (= (sal-line (find-pc-line (frame-pc (selected-frame))))
 gdb_scm_test_silent_cmd "step" "step into func2"
 gdb_scm_test_silent_cmd "up" "step out of func2"
 
-gdb_test "guile (print (> (sal-line (find-pc-line (frame-pc (selected-frame)))) line))" \
+gdb_test "guile (print (>= (sal-line (find-pc-line (frame-pc (selected-frame)))) line))" \
     "#t" "test find-pc-line with resume address"