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) |
} |