URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Subversion Repositories openrisc_me
[/] [openrisc/] [trunk/] [gnu-src/] [gdb-7.2/] [gdb/] [testsuite/] [gdb.xml/] [tdesc-arch.exp] - Rev 478
Go to most recent revision | Compare with Previous | Blame | View Log
# Copyright 2007, 2008, 2009, 2010 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/>.if {[gdb_skip_xml_test]} {unsupported "tdesc-arch.exp"return -1}gdb_start# Find some valid architectures - we just need legitimate values# to put in our <architecture> elements.set arch1 ""set arch2 ""set msg "read valid architectures"gdb_test_multiple "set architecture" $msg {-re "Requires an argument. Valid arguments are (\[^ \]*), (\[^ \]*), .*auto\\.\r\n$gdb_prompt $" {set arch1 $expect_out(1,string)set arch2 $expect_out(2,string)pass $msg}-re "Requires an argument. Valid arguments are (\[^ \]*), auto\\.\r\n$gdb_prompt $" {# If there is just one supported architecture, we can't do this test.unsupported "tdesc-arch.exp"return -1}}set default_arch ""set msg "read default architecture"gdb_test_multiple "show architecture" $msg {-re "The target architecture is set automatically \\(currently (\[^ \]*)\\)\r\n$gdb_prompt $" {set default_arch $expect_out(1,string)pass $msg}}# If that did not work, no point running further tests.if { "$arch1" == "" || "$arch2" == "" || "$default_arch" == "" } {unresolved "architecture XML tests"return -1}# Run these tests twice, once for $arch1 and once for $arch2, to# make sure that the tdesc file overrides the global default.proc set_arch { arch which } {global gdb_promptglobal subdirset fd [open "$subdir/tdesc-arch.xml" w]puts $fd \"<target><architecture>$arch</architecture></target>"close $fdremote_download host "${subdir}/tdesc-arch.xml" "tdesc-arch.xml"# Anchor the test output, so that error messages are detected.set cmd "set tdesc filename tdesc-arch.xml"set msg "$cmd ($which architecture)"set cmd_regex [string_to_regexp $cmd]gdb_test_multiple $cmd $msg {-re "^$cmd_regex\r\n$gdb_prompt $" {pass $msg}-re "^$cmd_regex\r\nwarning: A handler for the OS ABI.*\r\n$gdb_prompt $" {kfail gdb/2225 $msg}}set cmd "show architecture"gdb_test $cmd \"The target architecture is set automatically \\(currently $arch\\)" \"$cmd ($which architecture)"file delete "${subdir}/tdesc-arch.xml"remote_file host delete "tdesc-arch.xml"}set_arch $arch1 firstset_arch $arch2 second# Check an invalid architecture setting.set fd [open "${subdir}/tdesc-arch.xml" w]puts $fd \"<target><architecture>invalid</architecture></target>"close $fdremote_download host "$subdir/tdesc-arch.xml" "tdesc-arch.xml"set cmd "set tdesc filename tdesc-arch.xml"gdb_test $cmd \"warning:.*Target description specified unknown architecture.*" \"$cmd (invalid architecture)"set cmd "show architecture"gdb_test $cmd \"The target architecture is set automatically \\(currently $default_arch\\)" \"$cmd (invalid architecture)"file delete "${subdir}/tdesc-arch.xml"remote_file host delete "tdesc-arch.xml"
Go to most recent revision | Compare with Previous | Blame | View Log
