This is the mail archive of the binutils@sourceware.org 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]

Re: [PATCH v3] gold: Add Mips64 support.


> Fixed build problem detected with gcc 4.9.0. has_overflow32 is changed with has_overflow in releh.
>
> Regards,
> Vladimir.
>
>> This version of patch is using MIPS-64 relocation format. There are also changes in Mips_output_data_reloc, in Output_data_reloc_base, and in is_readonly_section.
>>
>> Regards,
>> Vladimir.
>>
>> Changelog -
>>
>>         * mips.cc: Add Mips64 support.
>>         * output.h (Output_reloc<SHT_REL>::get_address): Change from private to public.
>>         (Output_reloc<SHT_REL>::get_symbol_index): Likewise.
>>         (Output_data_reloc_base::Sort_relocs_comparison): Change from private to protected.
>>         (Output_data_reloc_base::relocs_): Likewise.

Mips_output_data_reloc::do_write() is bugging me, because the writing
of the relocation really should be in Output_reloc::write(), and to
write the non-standard format suggests that we should really have a
Mips_output_reloc class. I'm playing around with some additional
refactoring in the hopes of perhaps having Output_data_reloc take an
Output_reloc_type template parameter (instead of or in addition to
sh_type), so that in the mips backend, you can use something like
Output_data_reloc<Mips_output_reloc, ...>. If I can't find something
along those lines that I'm happy with, then we'll go with what you've
done here.

-cary


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]