Regenerate or1k opcodes file
[deliverable/binutils-gdb.git] / gdb / aarch64-tdep.c
index 2d1df03e19c17cdf38ce6ba0cfb173601970cefa..77155ef2cc8bfd9c5a5f86dbff5335970f959e23 100644 (file)
@@ -1,6 +1,6 @@
 /* Common target dependent code for GDB on AArch64 systems.
 
-   Copyright (C) 2009-2015 Free Software Foundation, Inc.
+   Copyright (C) 2009-2016 Free Software Foundation, Inc.
    Contributed by ARM Ltd.
 
    This file is part of GDB.
@@ -299,7 +299,7 @@ aarch64_analyze_prologue (struct gdbarch *gdbarch,
              if (aarch64_debug)
                {
                  debug_printf ("aarch64: prologue analysis gave up "
-                               "addr=0x%s opcode=0x%x (orr x register)\n",
+                               "addr=%s opcode=0x%x (orr x register)\n",
                                core_addr_to_string_nz (start), insn);
                }
              break;
@@ -365,7 +365,7 @@ aarch64_analyze_prologue (struct gdbarch *gdbarch,
        {
          if (aarch64_debug)
            {
-             debug_printf ("aarch64: prologue analysis gave up addr=0x%s"
+             debug_printf ("aarch64: prologue analysis gave up addr=%s"
                            " opcode=0x%x\n",
                            core_addr_to_string_nz (start), insn);
            }
@@ -855,7 +855,8 @@ aarch64_dwarf2_frame_init_reg (struct gdbarch *gdbarch, int regnum,
 
 typedef struct
 {
-  /* Value to pass on stack.  */
+  /* Value to pass on stack.  It can be NULL if this item is for stack
+     padding.  */
   const gdb_byte *data;
 
   /* Size in bytes of value to pass on stack.  */
@@ -1124,7 +1125,7 @@ pass_on_stack (struct aarch64_call_info *info, struct type *type,
       int pad = align - (info->nsaa & (align - 1));
 
       item.len = pad;
-      item.data = buf;
+      item.data = NULL;
 
       VEC_safe_push (stack_item_t, info->si, &item);
       info->nsaa += pad;
@@ -1382,7 +1383,8 @@ aarch64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
       stack_item_t *si = VEC_last (stack_item_t, info.si);
 
       sp -= si->len;
-      write_memory (sp, si->data, si->len);
+      if (si->data != NULL)
+       write_memory (sp, si->data, si->len);
       VEC_pop (stack_item_t, info.si);
     }
 
@@ -3190,15 +3192,17 @@ aarch64_record_asimd_load_store (insn_decode_record *aarch64_insn_r)
       else
         {
           for (sindex = 0; sindex < selem; sindex++)
-            if (bit (aarch64_insn_r->aarch64_insn, 22))
-              record_buf[reg_index++] = reg_rt + AARCH64_V0_REGNUM;
-            else
-              {
-                record_buf_mem[mem_index++] = esize / 8;
-                record_buf_mem[mem_index++] = address + addr_offset;
-              }
-            addr_offset = addr_offset + (esize / 8);
-            reg_rt = (reg_rt + 1) % 32;
+           {
+             if (bit (aarch64_insn_r->aarch64_insn, 22))
+               record_buf[reg_index++] = reg_rt + AARCH64_V0_REGNUM;
+             else
+               {
+                 record_buf_mem[mem_index++] = esize / 8;
+                 record_buf_mem[mem_index++] = address + addr_offset;
+               }
+             addr_offset = addr_offset + (esize / 8);
+             reg_rt = (reg_rt + 1) % 32;
+           }
         }
     }
   /* Load/store multiple structure.  */
This page took 0.024712 seconds and 4 git commands to generate.