diff options
author | Carlos Eduardo Seo <cseo@linux.vnet.ibm.com> | 2008-05-24 16:14:59 +0000 |
---|---|---|
committer | Carlos Eduardo Seo <cseo@linux.vnet.ibm.com> | 2008-05-24 16:14:59 +0000 |
commit | bb864ac122ca01559e202562d69b7619027e8e2c (patch) | |
tree | 98ef18ebc00148dba2a33a22ac5f7311d287bb7f | |
parent | f773c2d3dd0ce13a4aaaec37fedd0b797bb0f347 (diff) | |
download | gdb-bb864ac122ca01559e202562d69b7619027e8e2c.zip gdb-bb864ac122ca01559e202562d69b7619027e8e2c.tar.gz gdb-bb864ac122ca01559e202562d69b7619027e8e2c.tar.bz2 |
* elf.c (elfcore_write_register_note): New function.
* elf-bfd.h (elfcore_write_register_note): New prototype.
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elf-bfd.h | 2 | ||||
-rw-r--r-- | bfd/elf.c | 17 |
3 files changed, 24 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 11c894f..f4d4c57 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2008-05-24 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com> + + * elf.c (elfcore_write_register_note): New function. + * elf-bfd.h (elfcore_write_register_note): New prototype. + 2008-05-22 Christophe Lyon <christophe.lyon@st.com> * elf32-arm.c (arm_type_of_stub): Ignore STT_SECTION symbols. diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h index 8732710..81639ab 100644 --- a/bfd/elf-bfd.h +++ b/bfd/elf-bfd.h @@ -2143,6 +2143,8 @@ extern char *elfcore_write_ppc_vmx (bfd *, char *, int *, const void *, int); extern char *elfcore_write_lwpstatus (bfd *, char *, int *, long, int, const void *); +extern char *elfcore_write_register_note + (bfd *, char *, int *, const char *, const void *, int); extern bfd *_bfd_elf32_bfd_from_remote_memory (bfd *templ, bfd_vma ehdr_vma, bfd_vma *loadbasep, @@ -8453,6 +8453,23 @@ elfcore_write_ppc_vmx (bfd *abfd, note_name, NT_PPC_VMX, ppc_vmx, size); } +char * +elfcore_write_register_note (bfd *abfd, + char *buf, + int *bufsiz, + const char *section, + const void *data, + int size) +{ + if (strcmp (section, ".reg2") == 0) + return elfcore_write_prfpreg (abfd, buf, bufsiz, data, size); + if (strcmp (section, ".reg-xfp") == 0) + return elfcore_write_prxfpreg (abfd, buf, bufsiz, data, size); + if (strcmp (section, ".reg-ppc-vmx") == 0) + return elfcore_write_ppc_vmx (abfd, buf, bufsiz, data, size); + return NULL; +} + static bfd_boolean elf_parse_notes (bfd *abfd, char *buf, size_t size, file_ptr offset) { |