[gold] The first patch to address cortex-a53 erratum-843419.
authorHan Shen <shenhan@google.com>
Thu, 16 Apr 2015 22:17:08 +0000 (15:17 -0700)
committerHan Shen <shenhan@google.com>
Thu, 16 Apr 2015 22:26:34 +0000 (15:26 -0700)
commit5019d64a1ff6847a87f5af04bd7b8bc28f1dd9df
treee3d32545aec4fbe08fcf67368ae449fd09dbd174
parente797481d53d846c8adb51576385fdf7f8cb272ac
[gold] The first patch to address cortex-a53 erratum-843419.

It implemented scanning the binary and reporting occurrences to users
when '--fix-cortex-a53' is turned on. With this, gold users will be
able to see if or not there are such erratum occurrences in the output
binary. Also included in the CL is reading/recording mapping symbols,
which is needed during scan.

gold/ChangeLog:
    * aarch64.cc (AArch64_insn_utilities): New utility class.
    (AArch64_relobj::Mapping_symbol_position): New struct.
    (AArch64_relobj::Mapping_symbol_info): New typedef.
    (AArch64_relobj::do_count_local_symbols): New function overriding
    parent's implementation.
    (AArch64_relobj::mapping_symbol_info_): New member
    (AArch64_relobj::scan_erratum_843419): New method.
    (Target_aarch64::scan_erratum_843419_span): New method.
    (Target_aarch64::is_erratum_843419_sequence): New method.
    * options.h (fix_cortex_a53): New option.
gold/ChangeLog
gold/aarch64.cc
gold/options.h