* remote.c (remote_address_masked): If remote_address_size is zero,
authorUlrich Weigand <uweigand@de.ibm.com>
Fri, 22 Jun 2007 12:36:00 +0000 (12:36 +0000)
committerUlrich Weigand <uweigand@de.ibm.com>
Fri, 22 Jun 2007 12:36:00 +0000 (12:36 +0000)
default to target address size.
(build_remote_gdbarch_data): Remove.
(_initialize_remote): Do not swap remote_address_size.

gdb/ChangeLog
gdb/remote.c

index 64708ad3b5d1cb018ab0d22813d791137653db75..8b7317304de280ecc159b3c2e19a519f47cfb2e3 100644 (file)
@@ -1,3 +1,10 @@
+2007-06-22  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * remote.c (remote_address_masked): If remote_address_size is zero,
+       default to target address size.
+       (build_remote_gdbarch_data): Remove.
+       (_initialize_remote): Do not swap remote_address_size.
+
 2007-06-22  Ulrich Weigand  <uweigand@de.ibm.com>
 
        * gdbtypes.h (builtin_type_true_char, builtin_type_void,
index 3990a34285ac0cd32a04652b3de2166f9f32905a..8b4c4430eda84a80626bd0e9ec4d496be8423b8f 100644 (file)
@@ -85,8 +85,6 @@ static void handle_remote_sigint_twice (int);
 static void async_remote_interrupt (gdb_client_data);
 void async_remote_interrupt_twice (gdb_client_data);
 
-static void build_remote_gdbarch_data (void);
-
 static void remote_files_info (struct target_ops *ignore);
 
 static void remote_prepare_to_store (struct regcache *regcache);
@@ -3993,13 +3991,18 @@ hexnumnstr (char *buf, ULONGEST num, int width)
 static CORE_ADDR
 remote_address_masked (CORE_ADDR addr)
 {
-  if (remote_address_size > 0
-      && remote_address_size < (sizeof (ULONGEST) * 8))
+  int address_size = remote_address_size;
+  /* If "remoteaddresssize" was not set, default to target address size.  */
+  if (!address_size)
+    address_size = gdbarch_addr_bit (current_gdbarch);
+
+  if (address_size > 0
+      && address_size < (sizeof (ULONGEST) * 8))
     {
       /* Only create a mask when that mask can safely be constructed
          in a ULONGEST variable.  */
       ULONGEST mask = 1;
-      mask = (mask << remote_address_size) - 1;
+      mask = (mask << address_size) - 1;
       addr &= mask;
     }
   return addr;
@@ -6475,11 +6478,6 @@ show_remote_cmd (char *args, int from_tty)
   do_cleanups (showlist_chain);
 }
 
-static void
-build_remote_gdbarch_data (void)
-{
-  remote_address_size = gdbarch_addr_bit (current_gdbarch);
-}
 
 /* Function to be called whenever a new objfile (shlib) is detected.  */
 static void
@@ -6500,11 +6498,6 @@ _initialize_remote (void)
   remote_g_packet_data_handle =
     gdbarch_data_register_pre_init (remote_g_packet_data_init);
 
-  /* Old tacky stuff.  NOTE: This comes after the remote protocol so
-     that the remote protocol has been initialized.  */
-  DEPRECATED_REGISTER_GDBARCH_SWAP (remote_address_size);
-  deprecated_register_gdbarch_swap (NULL, 0, build_remote_gdbarch_data);
-
   /* Initialize the per-target state.  At the moment there is only one
      of these, not one per target.  Only one target is active at a
      time.  The default buffer size is unimportant; it will be expanded