f24894771e
This fixes a GDB internal error that may occur when the inferior has no valid stack pointer in r15. gdb/testsuite/ChangeLog: * gdb.arch/s390-stackless.S: New. * gdb.arch/s390-stackless.exp: New. gdb/ChangeLog: * s390-linux-tdep.c (s390_backchain_frame_unwind_cache): Avoid exception when attempting to access the inferior's backchain.
39 lines
1.2 KiB
Text
39 lines
1.2 KiB
Text
# Copyright 2016 Free Software Foundation, Inc.
|
|
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
if {![istarget "s390*-*-*"]} then {
|
|
verbose "Skipping s390 stackless test."
|
|
return
|
|
}
|
|
|
|
standard_testfile .S
|
|
|
|
if { [prepare_for_testing $testfile.exp $testfile $srcfile] } {
|
|
return -1
|
|
}
|
|
|
|
# Run until SIGSEGV.
|
|
gdb_run_cmd
|
|
|
|
set test "run until SIGSEGV"
|
|
gdb_test_multiple "" $test {
|
|
-re "Program received signal SIGSEGV.*$gdb_prompt $" {
|
|
pass $test
|
|
}
|
|
}
|
|
|
|
# Ensure that 'info registers' works properly and does not generate
|
|
# an internal-error.
|
|
gdb_test "info registers" "r0.*" "info registers"
|