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][GOLD] Fix some issues in building ARM Linux kernel with gold.


Patch committed.  I also took the liberty of replacing other uses of
"endianity" with "endianness" not included in the previous patch for
consistency.

Thanks

-Doug


2010/4/7 Ian Lance Taylor <iant@google.com>:
> "Doug Kwan (Ãö®¶¼w)" <dougkwan@google.com> writes:
>
>> 2010-03-30  Doug Kwan  <dougkwan@google.com>
>>
>>         * arm.cc (Arm_relobj::Arm_relobj): Initialize
>>         merge_flags_and_attribures.
>>         (Arm_relobj::merge_flags_and_attributes): New method.
>>         (Arm_relobj::merge_flags_and_attributes_): New data member.
>>         (Arm_exidx_cantunwind::do_fixed_endian_write): Fix formatting.
>>         (Arm_relobj::scan_sections_for_stubs): Ditto.
>>         (Arm_relobj::do_read_symbols): Check to see if we really want to
>>         merge processor-specific flags and attributes.  Exit early if
>>         an object is empty except for section names and the undefined symbol.
>>         (Target_arm::do_finalize_sections): Move check for ELF format to
>>         Arm_relobj::do_read_symbols.  Merge processor specific flags and
>>         attributes from a regular object only when we have determined that
>>         it is aapropriate.  Do not create an .ARM.attributes section in
>>         output if there is no regular input object.
>>         (Target_arm::merge_processor_specific_flags): Check
>>         --warn-mismatch before printing any error.
>>         (Target_arm::merge_object_attributes): Ditto.
>>         * gold.cc (queue_middle_tasks): Handle the case in which there is
>>         no regular object in input.
>>         * options.cc (General_options::parse_EB): New method.
>>         (General_options::parse_EL): Same.
>>         (General_options::General_options): Initialize endianity_.
>>         * options.h (-EB, -EL, --no-pipeline-knowledge, -p, --warn-mismatch):
>>         New options.
>>         (General_options::Endianity): New enum.
>>         (General_options::endianity): New method.
>>         (General_options::endianity_): New data member.
>>         * parameters.cc (Parameters::set_options): Check target endianity.
>>         (Parameters::set_target_once): Ditto.
>>         (Parameters::check_target_endianity): New method.
>>         (parameters_force_valid_target): If either -EL or -EB is specified,
>>         use it to define endianity of default target.
>>         * parameters.h (Parameters::check_target_endianity): New method
>>         declaration.
>
>
>
> Please change "endianity" to "endianness" throughout the patch.
> Sorry.
>
>> +      if (this->target().is_big_endian() != big_endian)
>> +     gold_error(_("incompatible endianity specified in command line"));
>
> Make this error message more like "input file does not match -EB/-EL
> option".  It would be nice if we could give the name of the file, but
> I guess that is not convenient.
>
>
> This is OK with those changes.
>
> Thanks.
>
> Ian
>


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