Rename gdbarch_update() to gdbarch_update_p()
authorAndrew Cagney <cagney@redhat.com>
Fri, 11 Aug 2000 01:30:11 +0000 (01:30 +0000)
committerAndrew Cagney <cagney@redhat.com>
Fri, 11 Aug 2000 01:30:11 +0000 (01:30 +0000)
gdb/ChangeLog
gdb/arch-utils.c
gdb/gdbarch.c
gdb/gdbarch.h
gdb/gdbarch.sh
gdb/rs6000-nat.c

index 90fc8134421a9dc8614e18076df8639a764d7774..e793492bcbffe09273b95c31fc9b1959e1ad3d29 100644 (file)
@@ -1,3 +1,12 @@
+2000-08-10  Andrew Cagney  <cagney@ops1.cygnus.com>
+
+       * rs6000-nat.c (set_host_arch): Check value returned by
+       gdbarch_update_p.
+       * gdbarch.sh (gdbarch_update_p): Rename gdbarch_update.
+       * gdbarch.h, gdbarch.c: Regenerate
+       * arch-utils.c (set_gdbarch_from_file,
+       initialize_current_architecture, set_endian): Update.
+
 2000-08-10  Jimmy Guo  <guo@cup.hp.com>
 
        * c-lang.c: Set case sensitivity on for c_language_defn,
index 862b283f19ebfa4858e7c5e2a6086a2781138dfd..5c9f070e59a288ca4e4c20cb0254a07b1f7625a1 100644 (file)
@@ -298,7 +298,10 @@ set_endian (char *ignore_args, int from_tty, struct cmd_list_element *c)
          struct gdbarch_info info;
          memset (&info, 0, sizeof info);
          info.byte_order = LITTLE_ENDIAN;
-         gdbarch_update (info);
+         if (! gdbarch_update_p (info))
+           {
+             printf_unfiltered ("Little endian target not supported by GDB\n");
+           }
        }
       else
        {
@@ -313,7 +316,10 @@ set_endian (char *ignore_args, int from_tty, struct cmd_list_element *c)
          struct gdbarch_info info;
          memset (&info, 0, sizeof info);
          info.byte_order = BIG_ENDIAN;
-         gdbarch_update (info);
+         if (! gdbarch_update_p (info))
+           {
+             printf_unfiltered ("Big endian target not supported by GDB\n");
+           }
        }
       else
        {
@@ -484,7 +490,7 @@ set_architecture (char *ignore_args, int from_tty, struct cmd_list_element *c)
       info.bfd_arch_info = bfd_scan_arch (set_architecture_string);
       if (info.bfd_arch_info == NULL)
        internal_error ("set_architecture: bfd_scan_arch failed");
-      if (gdbarch_update (info))
+      if (gdbarch_update_p (info))
        target_architecture_auto = 0;
       else
        printf_unfiltered ("Architecture `%s' not reconized.\n",
@@ -546,7 +552,8 @@ set_gdbarch_from_file (bfd *abfd)
       struct gdbarch_info info;
       memset (&info, 0, sizeof info);
       info.abfd = abfd;
-      gdbarch_update (info);
+      if (! gdbarch_update_p (info))
+       error ("Architecture of file not reconized.\n");
     }
   else
     {
@@ -641,7 +648,10 @@ initialize_current_architecture (void)
 
   if (GDB_MULTI_ARCH)
     {
-      gdbarch_update (info);
+      if (! gdbarch_update_p (info))
+       {
+         internal_error ("initialize_current_architecture: Selection of initial architecture failed");
+       }
     }
 
   /* Create the ``set architecture'' command appending ``auto'' to the
index d679f93f3657ddb7b73c36181ee0553ffbb63346..dccdb624c6b1ed81ea096aff59b1b402921a194f 100644 (file)
@@ -4021,7 +4021,7 @@ gdbarch_list_lookup_by_info (struct gdbarch_list *arches,
    failed. */
 
 int
-gdbarch_update (struct gdbarch_info info)
+gdbarch_update_p (struct gdbarch_info info)
 {
   struct gdbarch *new_gdbarch;
   struct gdbarch_list **list;
index 7f713c795ab81e117bd15da4671a10e3e6ace26a..819d85c452d45cb5ae56a80f69431a3c3eb4ff6b 100644 (file)
@@ -1349,13 +1349,15 @@ extern void gdbarch_free (struct gdbarch *);
    architecture manipulation commands.
 
    The INFO parameter shall be fully initialized (``memset (&INFO,
-   sizeof (info), 0)'' set relevant fields) before gdbarch_update() is
-   called.  gdbarch_update() shall initialize any ``default'' fields
-   using information obtained from the previous architecture or
+   sizeof (info), 0)'' set relevant fields) before gdbarch_update_p()
+   is called.  gdbarch_update_p() shall initialize any ``default''
+   fields using information obtained from the previous architecture or
    INFO.ABFD (if specified) before calling the corresponding
-   architectures INIT function. */
+   architectures INIT function.
 
-extern int gdbarch_update (struct gdbarch_info info);
+   Returns non-zero if the update succeeds */
+
+extern int gdbarch_update_p (struct gdbarch_info info);
 
 
 
index 0c9bdfb027ee21b8f5ed5e8ccf1c6803aa3e33bc..df4053ea038c41b7f4b047c53bbf161044ea6cb3 100755 (executable)
@@ -789,13 +789,15 @@ extern void gdbarch_free (struct gdbarch *);
    architecture manipulation commands.
 
    The INFO parameter shall be fully initialized (\`\`memset (&INFO,
-   sizeof (info), 0)'' set relevant fields) before gdbarch_update() is
-   called.  gdbarch_update() shall initialize any \`\`default'' fields
-   using information obtained from the previous architecture or
+   sizeof (info), 0)'' set relevant fields) before gdbarch_update_p()
+   is called.  gdbarch_update_p() shall initialize any \`\`default''
+   fields using information obtained from the previous architecture or
    INFO.ABFD (if specified) before calling the corresponding
-   architectures INIT function. */
+   architectures INIT function.
 
-extern int gdbarch_update (struct gdbarch_info info);
+   Returns non-zero if the update succeeds */
+
+extern int gdbarch_update_p (struct gdbarch_info info);
 
 
 
@@ -1723,7 +1725,7 @@ gdbarch_list_lookup_by_info (struct gdbarch_list *arches,
    failed. */
 
 int
-gdbarch_update (struct gdbarch_info info)
+gdbarch_update_p (struct gdbarch_info info)
 {
   struct gdbarch *new_gdbarch;
   struct gdbarch_list **list;
index 6afb4cf76c0e9ed2168ce5ec5e6b48db2fd48940..0bf1e32da03f6c8006e0a6303a878c8af8fc4a91 100644 (file)
@@ -908,7 +908,10 @@ set_host_arch (int pid)
   memset (&info, 0, sizeof info);
   info.bfd_arch_info = bfd_get_arch_info (&abfd);
 
-  gdbarch_update (info);
+  if (!gdbarch_update_p (info))
+    {
+      internal_error ("set_host_arch: failed to select architecture");
+    }
 }
 
 \f