* fork-child.c (escape_bang_in_quoted_argument): New function.
[deliverable/binutils-gdb.git] / gdb / avr-tdep.c
index 952b4e4c7b73e00aeb94774bfa93f439efc4c47d..386b3861629b8d1144b9230f514f058eb3b59340 100644 (file)
@@ -396,7 +396,9 @@ avr_read_fp (void)
    pointer? */
 
 static void
-avr_remote_translate_xfer_address (CORE_ADDR memaddr, int nr_bytes,
+avr_remote_translate_xfer_address (struct gdbarch *gdbarch,
+                                  struct regcache *regcache,
+                                  CORE_ADDR memaddr, int nr_bytes,
                                   CORE_ADDR *targ_addr, int *targ_len)
 {
   long out_addr;
@@ -736,7 +738,7 @@ avr_init_extra_frame_info (int fromleaf, struct frame_info *fi)
   int reg;
 
   if (get_next_frame (fi))
-    deprecated_update_frame_pc_hack (fi, FRAME_SAVED_PC (get_next_frame (fi)));
+    deprecated_update_frame_pc_hack (fi, DEPRECATED_FRAME_SAVED_PC (get_next_frame (fi)));
 
   frame_extra_info_zalloc (fi, sizeof (struct frame_extra_info));
   frame_saved_regs_zalloc (fi);
@@ -753,8 +755,8 @@ avr_init_extra_frame_info (int fromleaf, struct frame_info *fi)
   if (DEPRECATED_PC_IN_CALL_DUMMY (get_frame_pc (fi), get_frame_base (fi),
                                   get_frame_base (fi)))
     {
-      /* We need to setup fi->frame here because run_stack_dummy gets it wrong
-         by assuming it's always FP.  */
+      /* We need to setup fi->frame here because call_function_by_hand
+         gets it wrong by assuming it's always FP.  */
       deprecated_update_frame_base_hack (fi, deprecated_read_register_dummy (get_frame_pc (fi), get_frame_base (fi),
                                                                             AVR_PC_REGNUM));
     }
@@ -1145,18 +1147,18 @@ avr_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
   set_gdbarch_read_pc (gdbarch, avr_read_pc);
   set_gdbarch_write_pc (gdbarch, avr_write_pc);
-  set_gdbarch_read_fp (gdbarch, avr_read_fp);
+  set_gdbarch_deprecated_target_read_fp (gdbarch, avr_read_fp);
   set_gdbarch_read_sp (gdbarch, avr_read_sp);
-  set_gdbarch_write_sp (gdbarch, avr_write_sp);
+  set_gdbarch_deprecated_dummy_write_sp (gdbarch, avr_write_sp);
 
   set_gdbarch_num_regs (gdbarch, AVR_NUM_REGS);
 
   set_gdbarch_sp_regnum (gdbarch, AVR_SP_REGNUM);
-  set_gdbarch_fp_regnum (gdbarch, AVR_FP_REGNUM);
+  set_gdbarch_deprecated_fp_regnum (gdbarch, AVR_FP_REGNUM);
   set_gdbarch_pc_regnum (gdbarch, AVR_PC_REGNUM);
 
   set_gdbarch_register_name (gdbarch, avr_register_name);
-  set_gdbarch_register_size (gdbarch, 1);
+  set_gdbarch_deprecated_register_size (gdbarch, 1);
   set_gdbarch_register_bytes (gdbarch, AVR_NUM_REG_BYTES);
   set_gdbarch_register_byte (gdbarch, avr_register_byte);
   set_gdbarch_register_raw_size (gdbarch, avr_register_raw_size);
@@ -1168,25 +1170,18 @@ avr_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_print_insn (gdbarch, print_insn_avr);
 
   set_gdbarch_call_dummy_address (gdbarch, avr_call_dummy_address);
-  set_gdbarch_call_dummy_start_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_length (gdbarch, 0);
-  set_gdbarch_call_dummy_p (gdbarch, 1);
-  set_gdbarch_call_dummy_words (gdbarch, avr_call_dummy_words);
-  set_gdbarch_call_dummy_stack_adjust_p (gdbarch, 0);
-  set_gdbarch_fix_call_dummy (gdbarch, generic_fix_call_dummy);
+  set_gdbarch_deprecated_call_dummy_words (gdbarch, avr_call_dummy_words);
 
 /*    set_gdbarch_believe_pcc_promotion (gdbarch, 1); // TRoth: should this be set? */
 
   set_gdbarch_address_to_pointer (gdbarch, avr_address_to_pointer);
   set_gdbarch_pointer_to_address (gdbarch, avr_pointer_to_address);
-  set_gdbarch_push_arguments (gdbarch, avr_push_arguments);
-  set_gdbarch_push_return_address (gdbarch, avr_push_return_address);
-  set_gdbarch_pop_frame (gdbarch, avr_pop_frame);
+  set_gdbarch_deprecated_push_arguments (gdbarch, avr_push_arguments);
+  set_gdbarch_deprecated_push_return_address (gdbarch, avr_push_return_address);
+  set_gdbarch_deprecated_pop_frame (gdbarch, avr_pop_frame);
 
   set_gdbarch_use_struct_convention (gdbarch, generic_use_struct_convention);
-  set_gdbarch_store_struct_return (gdbarch, avr_store_struct_return);
+  set_gdbarch_deprecated_store_struct_return (gdbarch, avr_store_struct_return);
 
   set_gdbarch_deprecated_frame_init_saved_regs (gdbarch, avr_scan_prologue);
   set_gdbarch_deprecated_init_extra_frame_info (gdbarch, avr_init_extra_frame_info);
@@ -1200,11 +1195,11 @@ avr_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
                                             avr_remote_translate_xfer_address);
   set_gdbarch_frame_args_skip (gdbarch, 0);
   set_gdbarch_frameless_function_invocation (gdbarch, frameless_look_for_prologue);    /* ??? */
-  set_gdbarch_frame_chain (gdbarch, avr_frame_chain);
-  set_gdbarch_frame_saved_pc (gdbarch, avr_frame_saved_pc);
+  set_gdbarch_deprecated_frame_chain (gdbarch, avr_frame_chain);
+  set_gdbarch_deprecated_frame_saved_pc (gdbarch, avr_frame_saved_pc);
   set_gdbarch_frame_args_address (gdbarch, avr_frame_address);
   set_gdbarch_frame_locals_address (gdbarch, avr_frame_address);
-  set_gdbarch_saved_pc_after_call (gdbarch, avr_saved_pc_after_call);
+  set_gdbarch_deprecated_saved_pc_after_call (gdbarch, avr_saved_pc_after_call);
   set_gdbarch_frame_num_args (gdbarch, frame_num_args_unknown);
 
   set_gdbarch_convert_from_func_ptr_addr (gdbarch,
@@ -1279,7 +1274,10 @@ avr_io_reg_read_command (char *args, int from_tty)
 
   for (i = 0; i < nreg; i += step)
     {
-      j = step - (nreg % step);        /* how many registers this round? */
+      /* how many registers this round? */
+      j = step;
+      if ((i+j) >= nreg)
+        j = nreg - i;           /* last block is less than 8 registers */
 
       snprintf (query, sizeof (query) - 1, "avr.io_reg:%x,%x", i, j);
       target_query ((int) 'R', query, buf, &bufsiz);
This page took 0.025893 seconds and 4 git commands to generate.