* sparc64-tdep.h (sparc64_regnum): Fix comment.
[deliverable/binutils-gdb.git] / gdb / arm-tdep.c
index c0e2408c886b36829eb652710f3bcd7bffb2e488..3f2f13c3bb6e1c2f4d2446e7d110588ab4055b4d 100644 (file)
@@ -33,7 +33,6 @@
 #include "doublest.h"
 #include "value.h"
 #include "arch-utils.h"
-#include "solib-svr4.h"
 #include "osabi.h"
 
 #include "arm-tdep.h"
@@ -306,28 +305,6 @@ arm_frameless_function_invocation (struct frame_info *fi)
   return frameless;
 }
 
-/* The address of the arguments in the frame.  */
-static CORE_ADDR
-arm_frame_args_address (struct frame_info *fi)
-{
-  return get_frame_base (fi);
-}
-
-/* The address of the local variables in the frame.  */
-static CORE_ADDR
-arm_frame_locals_address (struct frame_info *fi)
-{
-  return get_frame_base (fi);
-}
-
-/* The number of arguments being passed in the frame.  */
-static int
-arm_frame_num_args (struct frame_info *fi)
-{
-  /* We have no way of knowing.  */
-  return -1;
-}
-
 /* A typical Thumb prologue looks like this:
    push    {r7, lr}
    add     sp, sp, #-28
@@ -1405,19 +1382,20 @@ pop_stack_item (struct stack_item *si)
    we should probably support some of them based on the selected ABI.  */
 
 static CORE_ADDR
-arm_push_dummy_call (struct gdbarch *gdbarch, struct regcache *regcache,
-                    CORE_ADDR dummy_addr, int nargs, struct value **args,
-                    CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr)
+arm_push_dummy_call (struct gdbarch *gdbarch, CORE_ADDR func_addr,
+                    struct regcache *regcache, CORE_ADDR bp_addr, int nargs,
+                    struct value **args, CORE_ADDR sp, int struct_return,
+                    CORE_ADDR struct_addr)
 {
   int argnum;
   int argreg;
   int nstack;
   struct stack_item *si = NULL;
 
-  /* Set the return address.  For the ARM, the return breakpoint is always
-     at DUMMY_ADDR.  */
+  /* Set the return address.  For the ARM, the return breakpoint is
+     always at BP_ADDR.  */
   /* XXX Fix for Thumb.  */
-  regcache_cooked_write_unsigned (regcache, ARM_LR_REGNUM, dummy_addr);
+  regcache_cooked_write_unsigned (regcache, ARM_LR_REGNUM, bp_addr);
 
   /* Walk through the list of args and determine how large a temporary
      stack is required.  Need to take care here as structs may be
@@ -1464,7 +1442,7 @@ arm_push_dummy_call (struct gdbarch *gdbarch, struct regcache *regcache,
          && target_type != NULL
          && TYPE_CODE_FUNC == TYPE_CODE (target_type))
        {
-         CORE_ADDR regval = extract_address (val, len);
+         CORE_ADDR regval = extract_unsigned_integer (val, len);
          if (arm_pc_is_thumb (regval))
            {
              val = alloca (len);
@@ -1483,7 +1461,7 @@ arm_push_dummy_call (struct gdbarch *gdbarch, struct regcache *regcache,
            {
              /* The argument is being passed in a general purpose
                 register.  */
-             CORE_ADDR regval = extract_address (val, partial_len);
+             CORE_ADDR regval = extract_unsigned_integer (val, partial_len);
              if (arm_debug)
                fprintf_unfiltered (gdb_stdlog, "arg %d in %s = 0x%s\n",
                                    argnum, REGISTER_NAME (argreg),
@@ -2493,7 +2471,7 @@ arm_get_longjmp_target (CORE_ADDR *pc)
                          INT_REGISTER_RAW_SIZE))
     return 0;
 
-  *pc = extract_address (buf, INT_REGISTER_RAW_SIZE);
+  *pc = extract_unsigned_integer (buf, INT_REGISTER_RAW_SIZE);
   return 1;
 }
 
@@ -2689,49 +2667,6 @@ arm_othernames (char *names, int n)
   set_disassembly_style ();
 }
 
-/* Fetch, and possibly build, an appropriate link_map_offsets structure
-   for ARM linux targets using the struct offsets defined in <link.h>.
-   Note, however, that link.h is not actually referred to in this file.
-   Instead, the relevant structs offsets were obtained from examining
-   link.h.  (We can't refer to link.h from this file because the host
-   system won't necessarily have it, or if it does, the structs which
-   it defines will refer to the host system, not the target).  */
-
-struct link_map_offsets *
-arm_linux_svr4_fetch_link_map_offsets (void)
-{
-  static struct link_map_offsets lmo;
-  static struct link_map_offsets *lmp = 0;
-
-  if (lmp == 0)
-    {
-      lmp = &lmo;
-
-      lmo.r_debug_size = 8;    /* Actual size is 20, but this is all we
-                                   need.  */
-
-      lmo.r_map_offset = 4;
-      lmo.r_map_size   = 4;
-
-      lmo.link_map_size = 20;  /* Actual size is 552, but this is all we
-                                   need.  */
-
-      lmo.l_addr_offset = 0;
-      lmo.l_addr_size   = 4;
-
-      lmo.l_name_offset = 4;
-      lmo.l_name_size   = 4;
-
-      lmo.l_next_offset = 12;
-      lmo.l_next_size   = 4;
-
-      lmo.l_prev_offset = 16;
-      lmo.l_prev_size   = 4;
-    }
-
-    return lmp;
-}
-
 /* Test whether the coff symbol specific value corresponds to a Thumb
    function.  */
 
@@ -2943,9 +2878,6 @@ arm_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_frameless_function_invocation
     (gdbarch, arm_frameless_function_invocation);
   set_gdbarch_deprecated_frame_saved_pc (gdbarch, arm_frame_saved_pc);
-  set_gdbarch_frame_args_address (gdbarch, arm_frame_args_address);
-  set_gdbarch_frame_locals_address (gdbarch, arm_frame_locals_address);
-  set_gdbarch_frame_num_args (gdbarch, arm_frame_num_args);
   set_gdbarch_frame_args_skip (gdbarch, 0);
   set_gdbarch_deprecated_frame_init_saved_regs (gdbarch, arm_frame_init_saved_regs);
   set_gdbarch_deprecated_pop_frame (gdbarch, arm_pop_frame);
@@ -2975,17 +2907,17 @@ arm_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_deprecated_fp_regnum (gdbarch, ARM_FP_REGNUM);   /* ??? */
   set_gdbarch_sp_regnum (gdbarch, ARM_SP_REGNUM);
   set_gdbarch_pc_regnum (gdbarch, ARM_PC_REGNUM);
-  set_gdbarch_register_byte (gdbarch, arm_register_byte);
+  set_gdbarch_deprecated_register_byte (gdbarch, arm_register_byte);
   set_gdbarch_deprecated_register_bytes (gdbarch,
                                         (NUM_GREGS * INT_REGISTER_RAW_SIZE
                                          + NUM_FREGS * FP_REGISTER_RAW_SIZE
                                          + NUM_SREGS * STATUS_REGISTER_SIZE));
   set_gdbarch_num_regs (gdbarch, NUM_GREGS + NUM_FREGS + NUM_SREGS);
-  set_gdbarch_register_raw_size (gdbarch, arm_register_raw_size);
-  set_gdbarch_register_virtual_size (gdbarch, arm_register_virtual_size);
+  set_gdbarch_deprecated_register_raw_size (gdbarch, arm_register_raw_size);
+  set_gdbarch_deprecated_register_virtual_size (gdbarch, arm_register_virtual_size);
   set_gdbarch_deprecated_max_register_raw_size (gdbarch, FP_REGISTER_RAW_SIZE);
   set_gdbarch_deprecated_max_register_virtual_size (gdbarch, FP_REGISTER_VIRTUAL_SIZE);
-  set_gdbarch_register_virtual_type (gdbarch, arm_register_type);
+  set_gdbarch_deprecated_register_virtual_type (gdbarch, arm_register_type);
 
   /* Internal <-> external register number maps.  */
   set_gdbarch_register_sim_regno (gdbarch, arm_register_sim_regno);
@@ -3078,6 +3010,8 @@ arm_init_abi_apcs (struct gdbarch_info info,
   /* Place-holder.  */
 }
 
+extern initialize_file_ftype _initialize_arm_tdep; /* -Wmissing-prototypes */
+
 void
 _initialize_arm_tdep (void)
 {
This page took 0.028478 seconds and 4 git commands to generate.