forked from Imagelibrary/binutils-gdb
This commit brings all the changes made by running gdb/copyright.py as per GDB's Start of New Year Procedure. For the avoidance of doubt, all changes in this commits were performed by the script.
62 lines
2.1 KiB
Plaintext
62 lines
2.1 KiB
Plaintext
# Copyright 2002-2022 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 3 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/>.
|
|
|
|
# The doco makes reference to built-in registers -- $pc and $fp. If
|
|
# the ISA contains registers by that name then they should be
|
|
# displayed. If the ISA contains registers identified as being
|
|
# equivalent, but have different names, then GDB will provide these as
|
|
# aliases. If the ISA doesn't provide any equivalent registers, then
|
|
# GDB will provide registers that map onto the frame's PC and FP.
|
|
|
|
#
|
|
# test running programs
|
|
#
|
|
|
|
standard_testfile
|
|
|
|
if [get_compiler_info] {
|
|
return -1
|
|
}
|
|
|
|
if {[prepare_for_testing "failed to prepare" $testfile $srcfile {debug nowarnings}]} {
|
|
return -1
|
|
}
|
|
|
|
if ![runto_main] then {
|
|
perror "couldn't run to breakpoint"
|
|
continue
|
|
}
|
|
|
|
|
|
# Get the value of PC and FP
|
|
|
|
set valueof_pc [get_hexadecimal_valueof "\$pc" "0"]
|
|
set valueof_fp [get_hexadecimal_valueof "\$fp" "0"]
|
|
|
|
# Check that the sequence $REGNAME -> REGNUM -> $REGNAME works. Use
|
|
# display since that encodes and then decodes the expression parameter
|
|
# (and hence uses the mechanisms we're trying to test).
|
|
|
|
gdb_test "display/i \$pc" "1: x/i +\\\$pc( +|\r\n)=> ${valueof_pc}.*"
|
|
gdb_test "display/w \$fp" "2: x/xw +\\\$fp +${valueof_fp}.*"
|
|
|
|
gdb_test "info register \$pc" "${valueof_pc}.*"
|
|
gdb_test "info register \$fp" "${valueof_fp}.*"
|
|
|
|
# Regression test for
|
|
# http://sourceware.org/bugzilla/show_bug.cgi?id=12659
|
|
gdb_test "info register pc fp" \
|
|
"pc +${valueof_pc}\[ \t\]+${valueof_pc} <.*>\[\r\n\]+fp +${valueof_fp}\[ \t\]+${valueof_fp}\[\r\n\]+"
|