diff options
author | Nick Clifton <nickc@redhat.com> | 2021-04-06 13:27:50 +0100 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2021-04-06 13:27:50 +0100 |
commit | eac4eb8ecb2626ef7711d8f6bee9e870ae435604 (patch) | |
tree | fd02dab5fb608d6b4383540e03f36dcd295f9dd8 /gas/ChangeLog | |
parent | da0835aebea71232f6b4fb4dea3ee18bdef0c139 (diff) | |
download | gdb-eac4eb8ecb2626ef7711d8f6bee9e870ae435604.zip gdb-eac4eb8ecb2626ef7711d8f6bee9e870ae435604.tar.gz gdb-eac4eb8ecb2626ef7711d8f6bee9e870ae435604.tar.bz2 |
Fix a problem assembling AArch64 sources when a relocation is generated against a symbol that has a defined value.
PR 27217
* config/tc-aarch64.c (my_get_expression): Rename to
aarch64_get_expression. Add a fifth argument to enable deferring
of expression resolution.
(parse_typed_reg): Update calls to my_get_expression.
(parse_vector_reg_list): Likewise.
(parse_immediate_expression): Likewise.
(parse_big_immediate): Likewise.
(parse_shift): Likewise.
(parse_shifter_operand_imm): Likewise.
(parse_operands): Likewise.
(parse_shifter_operand_reloc): Update calls to my_get_expression
and call aarch64_force_reloc to determine the value of the new
fifth argument.
(parse_address_main): Likewise.
(parse_half): Likewise.
(parse_adrp): Likewise.
(aarch64_force_reloc): New function. Contains code extracted from...
(aarch64_force_relocation): ... here.
* testsuite/gas/aarch64/pr27217.s: New test case.
* testsuite/gas/aarch64/pr27217.d: New test driver.
Diffstat (limited to 'gas/ChangeLog')
-rw-r--r-- | gas/ChangeLog | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 8558a87..f62e817 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,27 @@ +2021-04-06 Nick Clifton <nickc@redhat.com> + + PR 27217 + * config/tc-aarch64.c (my_get_expression): Rename to + aarch64_get_expression. Add a fifth argument to enable deferring + of expression resolution. + (parse_typed_reg): Update calls to my_get_expression. + (parse_vector_reg_list): Likewise. + (parse_immediate_expression): Likewise. + (parse_big_immediate): Likewise. + (parse_shift): Likewise. + (parse_shifter_operand_imm): Likewise. + (parse_operands): Likewise. + (parse_shifter_operand_reloc): Update calls to my_get_expression + and call aarch64_force_reloc to determine the value of the new + fifth argument. + (parse_address_main): Likewise. + (parse_half): Likewise. + (parse_adrp): Likewise. + (aarch64_force_reloc): New function. Contains code extracted from... + (aarch64_force_relocation): ... here. + * testsuite/gas/aarch64/pr27217.s: New test case. + * testsuite/gas/aarch64/pr27217.d: New test driver. + 2021-04-06 Jan Beulich <jbeulich@suse.com> * write.c (fixup_segment): Move add_symbol_segment declaration |