diff options
author | Thomas Preud'homme <thomas.preudhomme@arm.com> | 2016-05-10 15:28:10 +0100 |
---|---|---|
committer | Thomas Preud'homme <thomas.preudhomme@arm.com> | 2016-05-10 15:28:10 +0100 |
commit | 8d9d9490142a0cd6edb7cfec820a7c8f28b88395 (patch) | |
tree | 5afbcb7d81ecebd203b626c3a0cf15230ae32e4f /gdb/linespec.c | |
parent | 15afaa63f39a44563e49bb3b9fb38ed43e8b48ed (diff) | |
download | gdb-8d9d9490142a0cd6edb7cfec820a7c8f28b88395.zip gdb-8d9d9490142a0cd6edb7cfec820a7c8f28b88395.tar.gz gdb-8d9d9490142a0cd6edb7cfec820a7c8f28b88395.tar.bz2 |
Refactor Cortex-A8 erratum workaround in preparation
2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
bfd/
* elf32-arm.c (enum elf32_arm_stub_type): Delete
arm_stub_a8_veneer_lwm enumerator.
(arm_stub_a8_veneer_lwm): New unsigned constant to replace
aforementioned enumerator.
(struct elf32_arm_stub_hash_entry): Delete target_addend
field and add source_value.
(struct a8_erratum_fix): Delete addend field and add target_offset.
(stub_hash_newfunc): Initialize source_value field amd remove
initialization for target_addend.
(arm_build_one_stub): Stop special casing Thumb relocations: promote
the else to being always executed, moving the
arm_stub_a8_veneer_b_cond specific code in it. Remove
stub_entry->target_addend from points_to computation.
(cortex_a8_erratum_scan): Store in a8_erratum_fix structure the offset
to target symbol from start of section rather than the offset from the
stub address.
(elf32_arm_size_stubs): Set stub_entry's source_value and target_value
fields from struct a8_erratum_fix's offset and target_offset
respectively.
(make_branch_to_a8_stub): Rename target variable to loc. Compute
veneered_insn_loc and loc using stub_entry's source_value.
Diffstat (limited to 'gdb/linespec.c')
0 files changed, 0 insertions, 0 deletions