diff options
author | Nick Clifton <nickc@redhat.com> | 2021-12-16 16:40:57 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2021-12-16 16:40:57 +0000 |
commit | f3be70df1b1681ad1b9b0490587011bde433d220 (patch) | |
tree | 1d1938d029b210dc78c70ce4fba57a254add490b /ld | |
parent | 61ab1364c7efa3934e0ca62af444e6e6e34f219e (diff) | |
download | binutils-f3be70df1b1681ad1b9b0490587011bde433d220.zip binutils-f3be70df1b1681ad1b9b0490587011bde433d220.tar.gz binutils-f3be70df1b1681ad1b9b0490587011bde433d220.tar.bz2 |
Fix AVR assembler so that it creates relocs that will work with linker relaxation.
PR 28686
gas * config/tc-avr.h (tc_fix_adjustable): Define.
* config/tc-avr.c (avr_fix_adjustable): New function.
* testsuite/gas/all/gas.exp: Skip tests that need adjustable fixups.
* testsuite/gas/elf/elf.exp: Likewise.
* testsuite/gas/avr/diffreloc_withrelax.d: Adjust expected output.
* testsuite/gas/avr/pc-relative-reloc.d: Adjust expected output.
ld * testsuite/ld-avr/avr-prop-7.d: Adjust expected output.
* testsuite/ld-avr/avr-prop-8.d: Likewise.
* testsuite/ld-avr/pr13402.d: Likewise.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 7 | ||||
-rw-r--r-- | ld/testsuite/ld-avr/avr-prop-7.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-avr/avr-prop-8.d | 3 | ||||
-rw-r--r-- | ld/testsuite/ld-avr/pr13402.d | 6 |
4 files changed, 15 insertions, 5 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 7795217..a0ab861 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,10 @@ +2021-12-16 Nick Clifton <nickc@redhat.com> + + PR 28686 + * testsuite/ld-avr/avr-prop-7.d: Adjust expected output. + * testsuite/ld-avr/avr-prop-8.d: Likewise. + * testsuite/ld-avr/pr13402.d: Likewise. + 2021-11-30 Nick Clifton <nickc@redhat.com> * scripttempl/pru.sc (.pru_irq_map): Define output section. diff --git a/ld/testsuite/ld-avr/avr-prop-7.d b/ld/testsuite/ld-avr/avr-prop-7.d index 9f2cea9..ebcb9dc 100644 --- a/ld/testsuite/ld-avr/avr-prop-7.d +++ b/ld/testsuite/ld-avr/avr-prop-7.d @@ -9,7 +9,7 @@ 00000000 <__ctors_end>: 0: 04 d0 rcall .+8 ; 0xa <foo> 2: 00 00 nop - 4: 00 00 nop +#... 6: 86 e0 ldi r24, 0x06 ; 6 - 8: f0 f7 brcc .-4 ; 0x6 <__ctors_end\+0x6> + 8: f0 f7 brcc .-4 ; 0x6 <.*> #... diff --git a/ld/testsuite/ld-avr/avr-prop-8.d b/ld/testsuite/ld-avr/avr-prop-8.d index 2905f98..b0122be 100644 --- a/ld/testsuite/ld-avr/avr-prop-8.d +++ b/ld/testsuite/ld-avr/avr-prop-8.d @@ -9,5 +9,6 @@ 00000000 <__ctors_end>: 0: ff cf rjmp .-2 ; 0x0 <__ctors_end> 2: fe df rcall .-4 ; 0x0 <__ctors_end> - 4: f8 f7 brcc .-2 ; 0x4 <__ctors_end\+0x4> +#... + 4: f8 f7 brcc .-2 ; 0x4 <.*> #... diff --git a/ld/testsuite/ld-avr/pr13402.d b/ld/testsuite/ld-avr/pr13402.d index 6663950..a8fd634 100644 --- a/ld/testsuite/ld-avr/pr13402.d +++ b/ld/testsuite/ld-avr/pr13402.d @@ -8,9 +8,11 @@ #... main: call a - 0: 02 d0 rcall .+4 ; 0x6 <_etext> call b - 2: 01 d0 rcall .+2 ; 0x6 <_etext> + 0: 02 d0 rcall .+4 ; 0x6 <_etext> +#... call c + 2: 01 d0 rcall .+2 ; 0x6 <_etext> +#... 4: 00 d0 rcall .+0 ; 0x6 <_etext> #... |