| Index: gdb/testsuite/gdb.xml/tdesc-regs.exp
|
| diff --git a/gdb/testsuite/gdb.xml/tdesc-regs.exp b/gdb/testsuite/gdb.xml/tdesc-regs.exp
|
| index 9a89d7ee77a5e75e9ba848ea176fc73743c57771..5e5e61721e54089f831767c1050cdd9382f3d60d 100644
|
| --- a/gdb/testsuite/gdb.xml/tdesc-regs.exp
|
| +++ b/gdb/testsuite/gdb.xml/tdesc-regs.exp
|
| @@ -1,4 +1,4 @@
|
| -# Copyright 2007-2012 Free Software Foundation, Inc.
|
| +# Copyright 2007-2013 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
|
| @@ -36,6 +36,9 @@ switch -glob -- [istarget] {
|
| "mips*-*-*" {
|
| set core-regs {mips-cpu.xml mips-cp0.xml mips-fpu.xml mips-dsp.xml}
|
| }
|
| + "nios2-*-*" {
|
| + set core-regs {nios2-cpu.xml}
|
| + }
|
| "powerpc*-*-*" {
|
| set regdir "rs6000/"
|
| set core-regs {power-core.xml}
|
| @@ -91,7 +94,8 @@ gdb_test "set tdesc file $srcdir/$subdir/single-reg.xml" \
|
| # Copy the core registers into the objdir if necessary, so that they
|
| # will be found by <xi:include>.
|
| foreach src ${core-regs} {
|
| - set file [remote_download host "$srcdir/../features/$regdir$src" "$src"]
|
| + set remote_filename($src) \
|
| + [gdb_remote_download host "$srcdir/../features/$regdir$src"]
|
| }
|
|
|
| # Similarly, we need to copy files under test into the objdir.
|
| @@ -101,10 +105,13 @@ proc load_description { file errmsg } {
|
| global gdb_prompt
|
| global core-regs
|
| global architecture
|
| + global remote_filename
|
| +
|
| + set regs_file [standard_output_file regs.xml]
|
|
|
| - file delete "$subdir/regs.xml"
|
| + file delete $regs_file
|
| set ifd [open "$srcdir/$subdir/$file" r]
|
| - set ofd [open "$subdir/regs.xml" w]
|
| + set ofd [open $regs_file w]
|
| while {[gets $ifd line] >= 0} {
|
| if {[regexp {<xi:include href="core-regs.xml"/>} $line]} {
|
| if {! [string equal ${architecture} ""]} {
|
| @@ -119,11 +126,13 @@ proc load_description { file errmsg } {
|
| }
|
| close $ifd
|
| close $ofd
|
| - remote_download host "$subdir/regs.xml" "regs.xml"
|
| - file delete "$subdir/regs.xml"
|
| +
|
| + if {[is_remote host]} {
|
| + set regs_file [remote_download host "$subdir/regs.xml" "regs.xml"]
|
| + }
|
|
|
| # Anchor the test output, so that error messages are detected.
|
| - set cmd "set tdesc filename regs.xml"
|
| + set cmd "set tdesc filename [file tail $regs_file]"
|
| set msg "set tdesc filename regs.xml - from $file"
|
| set cmd_regex [string_to_regexp $cmd]
|
| gdb_test_multiple $cmd $msg {
|
| @@ -131,19 +140,27 @@ proc load_description { file errmsg } {
|
| pass $msg
|
| }
|
| }
|
| - remote_file host delete "regs.xml"
|
| +
|
| + if {[is_remote host]} {
|
| + remote_file host delete "regs.xml"
|
| + }
|
| +}
|
| +
|
| +if {![is_remote host]} {
|
| + gdb_test "cd [standard_output_file {}]" "Working directory .*" \
|
| + "cd to directory holding xml"
|
| }
|
|
|
| load_description "extra-regs.xml" ""
|
| gdb_test "ptype \$extrareg" "type = (int|long|long long)"
|
| gdb_test "ptype \$uintreg" "type = uint32_t"
|
| -gdb_test "ptype \$vecreg" "type = int8_t \\\[4\\\]"
|
| +gdb_test "ptype \$vecreg" "type = int8_t __attribute__ \\(\\(vector_size\\(4\\)\\)\\)"
|
| gdb_test "ptype \$unionreg" \
|
| "type = union {\r\n *v4int8 v4;\r\n *v2int16 v2;\r\n}"
|
| -gdb_test "ptype \$unionreg.v4" "type = int8_t \\\[4\\\]"
|
| +gdb_test "ptype \$unionreg.v4" "type = int8_t __attribute__ \\(\\(vector_size\\(4\\)\\)\\)"
|
| gdb_test "ptype \$structreg" \
|
| "type = struct struct1 {\r\n *v4int8 v4;\r\n *v2int16 v2;\r\n}"
|
| -gdb_test "ptype \$structreg.v4" "type = int8_t \\\[4\\\]"
|
| +gdb_test "ptype \$structreg.v4" "type = int8_t __attribute__ \\(\\(vector_size\\(4\\)\\)\\)"
|
| gdb_test "ptype \$bitfields" \
|
| "type = struct struct2 {\r\n *uint64_t f1 : 35;\r\n *uint64_t f2 : 1;\r\n}"
|
|
|
| @@ -152,5 +169,5 @@ load_description "core-only.xml" ""
|
| gdb_test "ptype \$extrareg" "type = void"
|
|
|
| foreach src ${core-regs} {
|
| - remote_file host delete "$src"
|
| + remote_file host delete $remote_filename($src)
|
| }
|
|
|