aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2021-12-16 16:40:57 +0000
committerNick Clifton <nickc@redhat.com>2021-12-16 16:40:57 +0000
commitf3be70df1b1681ad1b9b0490587011bde433d220 (patch)
tree1d1938d029b210dc78c70ce4fba57a254add490b /ld
parent61ab1364c7efa3934e0ca62af444e6e6e34f219e (diff)
downloadfsf-binutils-gdb-f3be70df1b1681ad1b9b0490587011bde433d220.zip
fsf-binutils-gdb-f3be70df1b1681ad1b9b0490587011bde433d220.tar.gz
fsf-binutils-gdb-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/ChangeLog7
-rw-r--r--ld/testsuite/ld-avr/avr-prop-7.d4
-rw-r--r--ld/testsuite/ld-avr/avr-prop-8.d3
-rw-r--r--ld/testsuite/ld-avr/pr13402.d6
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>
#...