OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [bfd/] [elf32-arm.c] - Diff between revs 163 and 166

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 163 Rev 166
Line 1964... Line 1964...
    {
    {
      default:
      default:
        return FALSE;
        return FALSE;
 
 
      case 124:         /* Linux/ARM elf_prpsinfo.  */
      case 124:         /* Linux/ARM elf_prpsinfo.  */
 
        elf_tdata (abfd)->core_pid
 
         = bfd_get_32 (abfd, note->descdata + 12);
        elf_tdata (abfd)->core_program
        elf_tdata (abfd)->core_program
         = _bfd_elfcore_strndup (abfd, note->descdata + 28, 16);
         = _bfd_elfcore_strndup (abfd, note->descdata + 28, 16);
        elf_tdata (abfd)->core_command
        elf_tdata (abfd)->core_command
         = _bfd_elfcore_strndup (abfd, note->descdata + 44, 80);
         = _bfd_elfcore_strndup (abfd, note->descdata + 44, 80);
    }
    }
Line 1984... Line 1986...
  }
  }
 
 
  return TRUE;
  return TRUE;
}
}
 
 
 
static char *
 
elf32_arm_nabi_write_core_note (bfd *abfd, char *buf, int *bufsiz,
 
                                int note_type, ...)
 
{
 
  switch (note_type)
 
    {
 
    default:
 
      return NULL;
 
 
 
    case NT_PRPSINFO:
 
      {
 
        char data[124];
 
        va_list ap;
 
 
 
        va_start (ap, note_type);
 
        memset (data, 0, sizeof (data));
 
        strncpy (data + 28, va_arg (ap, const char *), 16);
 
        strncpy (data + 44, va_arg (ap, const char *), 80);
 
        va_end (ap);
 
 
 
        return elfcore_write_note (abfd, buf, bufsiz,
 
                                   "CORE", note_type, data, sizeof (data));
 
      }
 
 
 
    case NT_PRSTATUS:
 
      {
 
        char data[148];
 
        va_list ap;
 
        long pid;
 
        int cursig;
 
        const void *greg;
 
 
 
        va_start (ap, note_type);
 
        memset (data, 0, sizeof (data));
 
        pid = va_arg (ap, long);
 
        bfd_put_32 (abfd, pid, data + 24);
 
        cursig = va_arg (ap, int);
 
        bfd_put_16 (abfd, cursig, data + 12);
 
        greg = va_arg (ap, const void *);
 
        memcpy (data + 72, greg, 72);
 
        va_end (ap);
 
 
 
        return elfcore_write_note (abfd, buf, bufsiz,
 
                                   "CORE", note_type, data, sizeof (data));
 
      }
 
    }
 
}
 
 
#define TARGET_LITTLE_SYM               bfd_elf32_littlearm_vec
#define TARGET_LITTLE_SYM               bfd_elf32_littlearm_vec
#define TARGET_LITTLE_NAME              "elf32-littlearm"
#define TARGET_LITTLE_NAME              "elf32-littlearm"
#define TARGET_BIG_SYM                  bfd_elf32_bigarm_vec
#define TARGET_BIG_SYM                  bfd_elf32_bigarm_vec
#define TARGET_BIG_NAME                 "elf32-bigarm"
#define TARGET_BIG_NAME                 "elf32-bigarm"
 
 
#define elf_backend_grok_prstatus       elf32_arm_nabi_grok_prstatus
#define elf_backend_grok_prstatus       elf32_arm_nabi_grok_prstatus
#define elf_backend_grok_psinfo         elf32_arm_nabi_grok_psinfo
#define elf_backend_grok_psinfo         elf32_arm_nabi_grok_psinfo
 
#define elf_backend_write_core_note     elf32_arm_nabi_write_core_note
 
 
typedef unsigned long int insn32;
typedef unsigned long int insn32;
typedef unsigned short int insn16;
typedef unsigned short int insn16;
 
 
/* In lieu of proper flags, assume all EABIv4 or later objects are
/* In lieu of proper flags, assume all EABIv4 or later objects are
Line 6929... Line 6980...
          && sym_sec->owner != NULL
          && sym_sec->owner != NULL
          && !INTERWORK_FLAG (sym_sec->owner))
          && !INTERWORK_FLAG (sym_sec->owner))
        {
        {
          (*_bfd_error_handler)
          (*_bfd_error_handler)
            (_("%B(%s): warning: interworking not enabled.\n"
            (_("%B(%s): warning: interworking not enabled.\n"
               "  first occurrence: %B: thumb call to arm"),
               "  first occurrence: %B: Thumb call to ARM"),
             sym_sec->owner, input_bfd, name);
             sym_sec->owner, input_bfd, name);
 
 
          return FALSE;
          return FALSE;
        }
        }
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.