diff options
author | Han Shen <shenhan@google.com> | 2015-04-16 15:17:08 -0700 |
---|---|---|
committer | Han Shen <shenhan@google.com> | 2015-04-16 15:26:34 -0700 |
commit | 5019d64a1ff6847a87f5af04bd7b8bc28f1dd9df (patch) | |
tree | e3d32545aec4fbe08fcf67368ae449fd09dbd174 /gold/options.h | |
parent | e797481d53d846c8adb51576385fdf7f8cb272ac (diff) | |
download | binutils-gdb-5019d64a1ff6847a87f5af04bd7b8bc28f1dd9df.tar.gz |
[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.
Diffstat (limited to 'gold/options.h')
-rw-r--r-- | gold/options.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gold/options.h b/gold/options.h index 8c9c934f113..c1a5743ebaf 100644 --- a/gold/options.h +++ b/gold/options.h @@ -802,6 +802,10 @@ class General_options N_("(ARM only) Fix binaries for Cortex-A8 erratum."), N_("(ARM only) Do not fix binaries for Cortex-A8 erratum.")); + DEFINE_bool(fix_cortex_a53, options::TWO_DASHES, '\0', false, + N_("(AArch64 only) Scan and fix binaries for Cortex-A53 errata."), + N_("(AArch64 only) Do not scan for Cortex-A53 errata.")); + DEFINE_bool(fix_arm1176, options::TWO_DASHES, '\0', true, N_("(ARM only) Fix binaries for ARM1176 erratum."), N_("(ARM only) Do not fix binaries for ARM1176 erratum.")); |