* arch-utils.c (initialize_current_architecture): Test byte_order
authorAndrew Cagney <cagney@redhat.com>
Sat, 29 Dec 2001 19:25:58 +0000 (19:25 +0000)
committerAndrew Cagney <cagney@redhat.com>
Sat, 29 Dec 2001 19:25:58 +0000 (19:25 +0000)
against BFD_ENDIAN_UNKNOWN.
(gdbarch_info_init): Initialize byte_order to BFD_ENDIAN_UNKNOWN.
* gdbarch.sh: Update comments on default value of byte_order.
(verify_gdbarch, gdbarch_update_p): Test byte_order against
BFD_ENDIAN_UNKNOWN.
* gdbarch.h, gdbarch.c: Re-generate.

gdb/ChangeLog
gdb/arch-utils.c
gdb/gdbarch.c
gdb/gdbarch.h
gdb/gdbarch.sh

index 3e9e5944d81c22f5596f1ac3a83c5e6ab04f1594..ccbdf4308df095dd2b7f3cc0611c21e6a7655cb6 100644 (file)
@@ -1,3 +1,13 @@
+2001-12-30  Andrew Cagney  <ac131313@redhat.com>
+
+       * arch-utils.c (initialize_current_architecture): Test byte_order
+       against BFD_ENDIAN_UNKNOWN.
+       (gdbarch_info_init): Initialize byte_order to BFD_ENDIAN_UNKNOWN.
+       * gdbarch.sh: Update comments on default value of byte_order.
+       (verify_gdbarch, gdbarch_update_p): Test byte_order against
+       BFD_ENDIAN_UNKNOWN.
+       * gdbarch.h, gdbarch.c: Re-generate.
+
 2001-12-27  Michael Snyder  <msnyder@redhat.com>
 
        * i386-linux-nat.c: Include i386-tdep.h.
index 73fab811ac97fcf197156d3d0447fdadd7da9df8..175f85eb3d8759ba29339a0ddd4a0a7ee966d63a 100644 (file)
@@ -762,7 +762,7 @@ initialize_current_architecture (void)
   /* take several guesses at a byte order. */
   /* NB: can't use TARGET_BYTE_ORDER_DEFAULT as its definition is
      forced above. */
-  if (info.byte_order == 0
+  if (info.byte_order == BFD_ENDIAN_UNKNOWN
       && default_bfd_vec != NULL)
     {
       /* Extract BFD's default vector's byte order. */
@@ -778,7 +778,7 @@ initialize_current_architecture (void)
          break;
        }
     }
-  if (info.byte_order == 0)
+  if (info.byte_order == BFD_ENDIAN_UNKNOWN)
     {
       /* look for ``*el-*'' in the target name. */
       const char *chp;
@@ -788,7 +788,7 @@ initialize_current_architecture (void)
          && strncmp (chp - 2, "el", 2) == 0)
        info.byte_order = BFD_ENDIAN_LITTLE;
     }
-  if (info.byte_order == 0)
+  if (info.byte_order == BFD_ENDIAN_UNKNOWN)
     {
       /* Wire it to big-endian!!! */
       info.byte_order = BIG_ENDIAN;
@@ -842,6 +842,7 @@ void
 gdbarch_info_init (struct gdbarch_info *info)
 {
   memset (info, 0, sizeof (struct gdbarch_info));
+  info->byte_order = BFD_ENDIAN_UNKNOWN;
 }
 
 /* */
index b1276c7d5ad0c657cc51444c4edf15641b781b03..1f7ba6ee4d2437d05aeacc95bd70bd6b965f4430 100644 (file)
@@ -548,7 +548,7 @@ verify_gdbarch (struct gdbarch *gdbarch)
   log = mem_fileopen ();
   cleanups = make_cleanup_ui_file_delete (log);
   /* fundamental */
-  if (gdbarch->byte_order == 0)
+  if (gdbarch->byte_order == BFD_ENDIAN_UNKNOWN)
     fprintf_unfiltered (log, "\n\tbyte-order");
   if (gdbarch->bfd_arch_info == NULL)
     fprintf_unfiltered (log, "\n\tbfd_arch_info");
@@ -4749,17 +4749,17 @@ gdbarch_update_p (struct gdbarch_info info)
     info.bfd_arch_info = TARGET_ARCHITECTURE;
 
   /* ``(gdb) set byte-order ...'' */
-  if (info.byte_order == 0
+  if (info.byte_order == BFD_ENDIAN_UNKNOWN
       && !TARGET_BYTE_ORDER_AUTO)
     info.byte_order = TARGET_BYTE_ORDER;
   /* From the INFO struct. */
-  if (info.byte_order == 0
+  if (info.byte_order == BFD_ENDIAN_UNKNOWN
       && info.abfd != NULL)
     info.byte_order = (bfd_big_endian (info.abfd) ? BIG_ENDIAN
                       : bfd_little_endian (info.abfd) ? BFD_ENDIAN_LITTLE
-                      : 0);
+                      : BFD_ENDIAN_UNKNOWN);
   /* From the current target. */
-  if (info.byte_order == 0)
+  if (info.byte_order == BFD_ENDIAN_UNKNOWN)
     info.byte_order = TARGET_BYTE_ORDER;
 
   /* Must have found some sort of architecture. */
index 84e5c167a7dc5bdcf3679847a1925c14d863b464..8cac8cb2712df6b4f9c629552e873fc877fade2b 100644 (file)
@@ -2263,8 +2263,7 @@ extern struct gdbarch_tdep *gdbarch_tdep (struct gdbarch *gdbarch);
 
    The INIT function parameter INFO shall, as far as possible, be
    pre-initialized with information obtained from INFO.ABFD or
-   previously selected architecture (if similar).  INIT shall ensure
-   that the INFO.BYTE_ORDER is non-zero.
+   previously selected architecture (if similar).
 
    The INIT function shall return any of: NULL - indicating that it
    doesn't recognize the selected architecture; an existing ``struct
@@ -2288,7 +2287,7 @@ struct gdbarch_info
   /* Use default: NULL (ZERO). */
   const struct bfd_arch_info *bfd_arch_info;
 
-  /* Use default: 0 (ZERO). */
+  /* Use default: BFD_ENDIAN_UNKNOWN (NB: is not ZERO).  */
   int byte_order;
 
   /* Use default: NULL (ZERO). */
index 6d6d9edabe3f534a4bbdb3bf09f8228aa5d13225..05c7768ca534e1c0393c341fa0a46e7052f0db06 100755 (executable)
@@ -913,8 +913,7 @@ extern struct gdbarch_tdep *gdbarch_tdep (struct gdbarch *gdbarch);
 
    The INIT function parameter INFO shall, as far as possible, be
    pre-initialized with information obtained from INFO.ABFD or
-   previously selected architecture (if similar).  INIT shall ensure
-   that the INFO.BYTE_ORDER is non-zero.
+   previously selected architecture (if similar).
 
    The INIT function shall return any of: NULL - indicating that it
    doesn't recognize the selected architecture; an existing \`\`struct
@@ -938,7 +937,7 @@ struct gdbarch_info
   /* Use default: NULL (ZERO). */
   const struct bfd_arch_info *bfd_arch_info;
 
-  /* Use default: 0 (ZERO). */
+  /* Use default: BFD_ENDIAN_UNKNOWN (NB: is not ZERO).  */
   int byte_order;
 
   /* Use default: NULL (ZERO). */
@@ -1429,7 +1428,7 @@ verify_gdbarch (struct gdbarch *gdbarch)
   log = mem_fileopen ();
   cleanups = make_cleanup_ui_file_delete (log);
   /* fundamental */
-  if (gdbarch->byte_order == 0)
+  if (gdbarch->byte_order == BFD_ENDIAN_UNKNOWN)
     fprintf_unfiltered (log, "\n\tbyte-order");
   if (gdbarch->bfd_arch_info == NULL)
     fprintf_unfiltered (log, "\n\tbfd_arch_info");
@@ -2058,17 +2057,17 @@ gdbarch_update_p (struct gdbarch_info info)
     info.bfd_arch_info = TARGET_ARCHITECTURE;
 
   /* \`\`(gdb) set byte-order ...'' */
-  if (info.byte_order == 0
+  if (info.byte_order == BFD_ENDIAN_UNKNOWN
       && !TARGET_BYTE_ORDER_AUTO)
     info.byte_order = TARGET_BYTE_ORDER;
   /* From the INFO struct. */
-  if (info.byte_order == 0
+  if (info.byte_order == BFD_ENDIAN_UNKNOWN
       && info.abfd != NULL)
     info.byte_order = (bfd_big_endian (info.abfd) ? BIG_ENDIAN
                       : bfd_little_endian (info.abfd) ? BFD_ENDIAN_LITTLE
-                      : 0);
+                      : BFD_ENDIAN_UNKNOWN);
   /* From the current target. */
-  if (info.byte_order == 0)
+  if (info.byte_order == BFD_ENDIAN_UNKNOWN)
     info.byte_order = TARGET_BYTE_ORDER;
 
   /* Must have found some sort of architecture. */