diff --git a/gdb/mi/ChangeLog b/gdb/mi/ChangeLog
index 520ad4d718d..d0ec77316b0 100644
--- a/gdb/mi/ChangeLog
+++ b/gdb/mi/ChangeLog
@@ -1,3 +1,9 @@
+2003-09-10  Elena Zannoni  <ezannoni@redhat.com>
+
+	* mi-main.c (mi_setup_architecture_data): Don't use
+	DEPRECATED_REGISTER_BYTES because some architecture don't set it
+	and its default is 0. 
+
 2003-08-08  Andrew Cagney  <cagney@redhat.com>
 
 	* mi-main.c (captured_mi_execute_command): Add "mi2" and "mi3" to
diff --git a/gdb/mi/mi-main.c b/gdb/mi/mi-main.c
index 40d3699dc71..f6fc36e259c 100644
--- a/gdb/mi/mi-main.c
+++ b/gdb/mi/mi-main.c
@@ -1478,9 +1478,8 @@ mi_load_progress (const char *section_name,
 void
 mi_setup_architecture_data (void)
 {
-  /* don't trust DEPRECATED_REGISTER_BYTES to be zero. */
-  old_regs = xmalloc (DEPRECATED_REGISTER_BYTES + 1);
-  memset (old_regs, 0, DEPRECATED_REGISTER_BYTES + 1);
+  old_regs = xmalloc ((NUM_REGS + NUM_PSEUDO_REGS) * MAX_REGISTER_SIZE + 1);
+  memset (old_regs, 0, (NUM_REGS + NUM_PSEUDO_REGS) * MAX_REGISTER_SIZE + 1);
 }
 
 void