This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Fri, May 21, 2004 at 10:55:03AM +0930, Alan Modra wrote: > On Thu, May 20, 2004 at 03:54:41PM -0700, H. J. Lu wrote: > > For > > x = "1111" + (y - 0x1000) * 2; > > > > gcc can generate > > > > addl r14 = @ltoffx(.LC0-8192), r1 > > ;; > > ld8.mov r14 = [r14], .LC0-8192 > > ;; > > > > _bfd_merged_section_offset thinks offset + adddend is bad when it is > > not the real string position. I looked at _bfd_merged_section_offset. > > It is always passed with addend == 0. I changed addend to dynamic_offset > > so that we can tell _bfd_merged_section_offset to compute offset > > properly. If my patch is right, we may need to make similar change > > to elf32-ppc.c. > > I think it quite possible that this patch will break other accesses > into merged sections. To properly fix the problem, you would need to > distinguish this particular access from others. Perhaps the reloc used > might give you enough information. > Good idea. Here it is.
Attachment:
bfd-merge-2.patch
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |