This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[commit] Simplify gdbarch-dump
- From: Andrew Cagney <cagney at gnu dot org>
- To: gdb-patches at sources dot redhat dot com
- Date: Mon, 21 Jun 2004 11:03:22 -0400
- Subject: [commit] Simplify gdbarch-dump
FYI,
gdbarch.sh included a mechanism for specifying a print predicate (don't
try to print the member unless predicate). The predicate was only used
for one member and for that the check is no longer needed.
This removes the redundant mechanism,
committed
Andrew
2004-06-21 Andrew Cagney <cagney@gnu.org>
* gdbarch.sh (read): Delete "print_p" and "description", add
"garbage_at_eol". Check for non-empty garbage at end-of-line.
Delete references to print_p.
(TARGET_ARCHITECTURE): Delete print predicate.
* gdbarch.c: Re-generate.
Index: gdbarch.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbarch.c,v
retrieving revision 1.300
diff -p -u -r1.300 gdbarch.c
--- gdbarch.c 21 Jun 2004 00:17:02 -0000 1.300
+++ gdbarch.c 21 Jun 2004 14:57:41 -0000
@@ -770,10 +770,9 @@ gdbarch_dump (struct gdbarch *current_gd
fprintf_unfiltered (file,
"gdbarch_dump: TARGET_ARCHITECTURE # %s\n",
XSTRING (TARGET_ARCHITECTURE));
- if (TARGET_ARCHITECTURE != NULL)
- fprintf_unfiltered (file,
- "gdbarch_dump: TARGET_ARCHITECTURE = %s\n",
- TARGET_ARCHITECTURE->printable_name);
+ fprintf_unfiltered (file,
+ "gdbarch_dump: TARGET_ARCHITECTURE = %s\n",
+ TARGET_ARCHITECTURE->printable_name);
#endif
#ifdef TARGET_BFD_VMA_BIT
fprintf_unfiltered (file,
Index: gdbarch.sh
===================================================================
RCS file: /cvs/src/src/gdb/gdbarch.sh,v
retrieving revision 1.330
diff -p -u -r1.330 gdbarch.sh
--- gdbarch.sh 21 Jun 2004 00:17:02 -0000 1.330
+++ gdbarch.sh 21 Jun 2004 14:57:42 -0000
@@ -44,7 +44,7 @@ compare_new ()
# Format of the input table
-read="class macro returntype function formal actual attrib staticdefault predefault postdefault invalid_p fmt print print_p description"
+read="class macro returntype function formal actual attrib staticdefault predefault postdefault invalid_p fmt print garbage_at_eol"
do_read ()
{
@@ -75,6 +75,13 @@ ${line}
EOF
IFS="${OFS}"
+ if test -n "${garbage_at_eol}"
+ then
+ echo "Garbage at end-of-line in ${line}" 1>&2
+ kill $$
+ exit 1
+ fi
+
# .... and then going back through each field and strip out those
# that ended up with just that space character.
for r in ${read}
@@ -349,20 +356,9 @@ do
# If PRINT is empty, ``(long)'' is used.
- print_p ) : ;;
-
- # An optional indicator for any predicte to wrap around the
- # print member code.
-
- # () -> Call a custom function to do the dump.
- # exp -> Wrap print up in ``if (${print_p}) ...
- # ``'' -> No predicate
-
- # If PRINT_P is empty, ``1'' is always used.
+ garbage_at_eol ) : ;;
- description ) : ;;
-
- # Currently unused.
+ # Catches stray fields.
*)
echo "Bad field ${field}"
@@ -375,7 +371,7 @@ function_list ()
{
# See below (DOCO) for description of each field
cat <<EOF
-i:TARGET_ARCHITECTURE:const struct bfd_arch_info *:bfd_arch_info::::&bfd_default_arch_struct::::%s:TARGET_ARCHITECTURE->printable_name:TARGET_ARCHITECTURE != NULL
+i:TARGET_ARCHITECTURE:const struct bfd_arch_info *:bfd_arch_info::::&bfd_default_arch_struct::::%s:TARGET_ARCHITECTURE->printable_name
#
i:TARGET_BYTE_ORDER:int:byte_order::::BFD_ENDIAN_BIG
#
@@ -1581,19 +1577,7 @@ do
printf " \"gdbarch_dump: ${macro} # %%s\\\\n\",\n"
printf " XSTRING (${macro}));\n"
fi
- if [ "x${print_p}" = "x()" ]
- then
- printf " gdbarch_dump_${function} (current_gdbarch);\n"
- elif [ "x${print_p}" = "x0" ]
- then
- printf " /* skip print of ${macro}, print_p == 0. */\n"
- elif [ -n "${print_p}" ]
- then
- printf " if (${print_p})\n"
- printf " fprintf_unfiltered (file,\n"
- printf " \"gdbarch_dump: ${macro} = %s\\\\n\",\n" "${fmt}"
- printf " ${print});\n"
- elif class_is_function_p
+ if class_is_function_p
then
printf " fprintf_unfiltered (file,\n"
printf " \"gdbarch_dump: ${macro} = <0x%%08lx>\\\\n\",\n"