From: "H. J. Lu" <hjl@lucon.org>
To: binutils@sources.redhat.com
Subject: PATCH: Fix "FAIL: objcopy (simple copy)" for tic54x-coff
Date: Tue, 22 Feb 2005 00:15:00 -0000 [thread overview]
Message-ID: <20050221210909.GA14151@lucon.org> (raw)
TI relocation has a r_reserved field. But we never initialize it and
we get some random values. This patch makes sure that it is always
initialized.
H.J.
----
bfd/
2005-02-21 H.J. Lu <hongjiu.lu@intel.com>
* coffcode.h (coff_write_relocs): Clear the r_reserved field
if COFF_REL_HAS_R_RESERVED is defined before swapping out
relocation.
include/coff/
2005-02-21 H.J. Lu <hongjiu.lu@intel.com>
* ti.h (COFF_REL_HAS_R_RESERVED): Defined.
* tic80.h (COFF_REL_HAS_R_RESERVED): Defined.
--- binutils/bfd/coffcode.h.ti 2005-02-21 10:18:36.000000000 -0800
+++ binutils/bfd/coffcode.h 2005-02-21 13:03:05.178091748 -0800
@@ -2510,6 +2510,10 @@ coff_write_relocs (abfd, first_undef)
if (bfd_seek (abfd, s->rel_filepos, SEEK_SET) != 0)
return FALSE;
+#ifdef COFF_REL_HAS_R_RESERVED
+ memset (&dst.r_reserved, 0, sizeof (dst.r_reserved));
+#endif
+
#ifdef COFF_WITH_PE
if (obj_pe (abfd) && s->reloc_count >= 0xffff)
{
--- binutils/include/coff/ti.h.ti 2003-08-07 09:02:59.000000000 -0700
+++ binutils/include/coff/ti.h 2005-02-21 12:49:58.767373577 -0800
@@ -441,6 +441,9 @@ union external_auxent {
/********************** RELOCATION DIRECTIVES **********************/
+/* Relocation has r_reserved. */
+#define COFF_REL_HAS_R_RESERVED 1
+
struct external_reloc_v0
{
char r_vaddr[4];
--- binutils/include/coff/tic80.h.ti 2001-03-15 15:06:40.000000000 -0800
+++ binutils/include/coff/tic80.h 2005-02-21 12:50:23.729673155 -0800
@@ -81,6 +81,9 @@ struct external_scnhdr
/********************** RELOCATION DIRECTIVES **********************/
+/* Relocation has r_reserved. */
+#define COFF_REL_HAS_R_RESERVED 1
+
/* The external reloc has an offset field, because some of the reloc
types on the h8 don't have room in the instruction for the entire
offset - eg the strange jump and high page addressing modes. */
next reply other threads:[~2005-02-21 21:09 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-22 0:15 H. J. Lu [this message]
2005-02-22 9:34 ` Alan Modra
2005-02-22 18:45 ` Nick Clifton
2005-02-23 8:03 ` H. J. Lu
2005-02-23 14:20 ` Nick Clifton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20050221210909.GA14151@lucon.org \
--to=hjl@lucon.org \
--cc=binutils@sources.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).