[committed,gdb/testsuite] Add cc-with-debug-names.exp

Message ID 0a6f1f73-13c2-60d2-47cd-1070c2e7f710@suse.de
State New
Headers show
Series
  • [committed,gdb/testsuite] Add cc-with-debug-names.exp
Related show

Commit Message

Tom de Vries May 4, 2019, 8:20 a.m.
[ was: Re: [PATCH][gdb/testsuite] Fix index-cache.exp with
CC_WITH_TWEAKS_FLAGS=-i ]

On 03-05-19 23:17, Simon Marchi wrote:
> I would slightly prefer that instead of doing this, we would notice that that file

> already has an index (in the form of .gdb_index or .debug_names), and adjust our

> expectations in the test.

> 


Added cc-with-debug-names target board for .debug_names. Filed PR24522 -
"Asserts with cc-with-debug-names".

Thanks,
- Tom

Patch

[gdb/testsuite] Add cc-with-debug-names.exp

Add a target board that makes it easy to run the test suite with a
.debug_names section added to executables.

gdb/ChangeLog:

2019-05-04  Tom de Vries  <tdevries@suse.de>

	* contrib/cc-with-tweaks.sh: Support -n arg.

gdb/testsuite/ChangeLog:

2019-05-04  Tom de Vries  <tdevries@suse.de>

	* boards/cc-with-debug-names.exp: New file.

---
 gdb/contrib/cc-with-tweaks.sh                |  8 ++++++--
 gdb/testsuite/boards/cc-with-debug-names.exp | 26 ++++++++++++++++++++++++++
 2 files changed, 32 insertions(+), 2 deletions(-)

diff --git a/gdb/contrib/cc-with-tweaks.sh b/gdb/contrib/cc-with-tweaks.sh
index 33c6322138..47379cc158 100755
--- a/gdb/contrib/cc-with-tweaks.sh
+++ b/gdb/contrib/cc-with-tweaks.sh
@@ -42,7 +42,8 @@ 
 # -Z invoke objcopy --compress-debug-sections
 # -z compress using dwz
 # -m compress using dwz -m
-# -i make an index
+# -i make an index (.gdb_index)
+# -n make a dwarf5 index (.debug_names)
 # -p create .dwp files (Fission), you need to also use gcc option -gsplit-dwarf
 # If nothing is given, no changes are made
 
@@ -77,6 +78,7 @@  next_is_output_file=no
 output_file=a.out
 
 want_index=false
+index_options=""
 want_dwz=false
 want_multi=false
 want_dwp=false
@@ -87,6 +89,7 @@  while [ $# -gt 0 ]; do
 	-Z) want_objcopy_compress=true ;;
 	-z) want_dwz=true ;;
 	-i) want_index=true ;;
+	-n) want_index=true; index_options=-dwarf-5;;
 	-m) want_multi=true ;;
 	-p) want_dwp=true ;;
 	*) break ;;
@@ -170,7 +173,8 @@  if [ "$want_index" = true ]; then
     # Filter out these messages which would stop dejagnu testcase run:
     # echo "$myname: No index was created for $file" 1>&2
     # echo "$myname: [Was there no debuginfo? Was there already an index?]" 1>&2
-    GDB=$GDB $GDB_ADD_INDEX "$output_file" 2>&1|grep -v "^${GDB_ADD_INDEX##*/}: " >&2
+    GDB=$GDB $GDB_ADD_INDEX $index_options "$output_file" 2>&1 \
+	| grep -v "^${GDB_ADD_INDEX##*/}: " >&2
     rc=${PIPESTATUS[0]}
     [ $rc != 0 ] && exit $rc
 fi
diff --git a/gdb/testsuite/boards/cc-with-debug-names.exp b/gdb/testsuite/boards/cc-with-debug-names.exp
new file mode 100644
index 0000000000..0acf46ca95
--- /dev/null
+++ b/gdb/testsuite/boards/cc-with-debug-names.exp
@@ -0,0 +1,26 @@ 
+# Copyright 2019 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/>.
+
+# This file is a dejagnu "board file" and is used to run the testsuite
+# with contrib/cc-with-tweaks.sh -n.
+#
+# Example usage:
+# bash$ cd $objdir
+# bash$ make check-gdb \
+#   RUNTESTFLAGS='--target_board=cc-with-debug-names'
+#
+
+set CC_WITH_TWEAKS_FLAGS "-n"
+load_board_description "cc-with-tweaks"