diff options
author | Andreas Arnez <arnez@linux.vnet.ibm.com> | 2014-01-22 15:37:41 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@linux.vnet.ibm.com> | 2014-01-22 17:02:13 +0100 |
commit | d674a7090f3ae01552e9df5044acc2df1127a7c0 (patch) | |
tree | 77eb625a387affc9b45a611366318a7ec05d6454 | |
parent | 20fa339009918ded4110124744bf97c12d3d77f5 (diff) | |
download | gdb-d674a7090f3ae01552e9df5044acc2df1127a7c0.zip gdb-d674a7090f3ae01552e9df5044acc2df1127a7c0.tar.gz gdb-d674a7090f3ae01552e9df5044acc2df1127a7c0.tar.bz2 |
Fix regression on s390x with entry-values.exp.
The trace-specific test case 'entry-values' concludes fairly late in
the process that this platform doesn't support trace. Before that,
there are some platform specifics that don't work on s390x. The fix
addresses two aspects:
(1) Removal of an excess space character in the regex for the
disassembly. This is needed when there is a function alignment
gap, because then the hex address is immediately followed by a
colon, like in the first 'nopr' line below:
(gdb) disassemble foo+50,+10
Dump of assembler code from 0x32 to 0x3c:
0x0000000000000032 <foo+50>: br %r4
0x0000000000000034: nopr %r7
0x0000000000000036: nopr %r7
0x0000000000000038 <bar+0>: stmg %r11,%r15,88(%r15)
End of assembler dump.
(2) Handling for the s390-specific call instruction.
gdb/testsuite/ChangeLog:
* gdb.trace/entry-values.exp: Remove excess space character from
regex patterns. Handle s390 call instruction.
-rw-r--r-- | gdb/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.trace/entry-values.exp | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 5e02b7a..dbbd0ec2 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2014-01-22 Andreas Arnez <arnez@vnet.linux.ibm.com> + * gdb.trace/entry-values.exp: Remove excess space character from + regex patterns. Handle s390 call instruction. + +2014-01-22 Andreas Arnez <arnez@vnet.linux.ibm.com> + * gdb.dwarf2/dw2-dir-file-name.c (FUNC): Insert alignment and define "*_start" label. Make "name" static. * gdb.dwarf2/dw2-dir-file-name.exp: Replace references to diff --git a/gdb/testsuite/gdb.trace/entry-values.exp b/gdb/testsuite/gdb.trace/entry-values.exp index 0fb35a0..f10ffa6 100644 --- a/gdb/testsuite/gdb.trace/entry-values.exp +++ b/gdb/testsuite/gdb.trace/entry-values.exp @@ -57,7 +57,7 @@ gdb_test_multiple $test $test { set test "disassemble foo+$foo_length,+10" gdb_test_multiple $test $test { - -re ".*($hex) <foo\\+$foo_length>:\[^\r\n\]+\r\n\[ \]+($hex) .*\.\r\n$gdb_prompt $" { + -re ".*($hex) <foo\\+$foo_length>:\[^\r\n\]+\r\n\[ \]+($hex).*\.\r\n$gdb_prompt $" { set start $expect_out(1,string) set end $expect_out(2,string) @@ -77,6 +77,8 @@ set bar_call_foo "" if { [istarget "arm*-*-*"] || [istarget "aarch64*-*-*"] } { set call_insn "bl" +} elseif { [istarget "s390*-*-*"] } { + set call_insn "brasl" } else { set call_insn "call" } @@ -109,7 +111,7 @@ if { [string equal $bar_call_foo ""] || [string equal $bar_length ""] } { set test "disassemble bar+$bar_length,+10" gdb_test_multiple $test $test { - -re ".*($hex) <bar\\+$bar_length>:\[^\r\n\]+\r\n\[ \]+($hex) .*\.\r\n$gdb_prompt $" { + -re ".*($hex) <bar\\+$bar_length>:\[^\r\n\]+\r\n\[ \]+($hex).*\.\r\n$gdb_prompt $" { set start $expect_out(1,string) set end $expect_out(2,string) |