aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
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 /gas/testsuite
parent61ab1364c7efa3934e0ca62af444e6e6e34f219e (diff)
downloadgdb-f3be70df1b1681ad1b9b0490587011bde433d220.zip
gdb-f3be70df1b1681ad1b9b0490587011bde433d220.tar.gz
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 'gas/testsuite')
-rw-r--r--gas/testsuite/gas/all/gas.exp4
-rw-r--r--gas/testsuite/gas/avr/diffreloc_withrelax.d4
-rw-r--r--gas/testsuite/gas/avr/pc-relative-reloc.d2
-rw-r--r--gas/testsuite/gas/elf/elf.exp2
4 files changed, 6 insertions, 6 deletions
diff --git a/gas/testsuite/gas/all/gas.exp b/gas/testsuite/gas/all/gas.exp
index 5eee4f8..5a08027 100644
--- a/gas/testsuite/gas/all/gas.exp
+++ b/gas/testsuite/gas/all/gas.exp
@@ -166,11 +166,11 @@ switch -glob $target_triplet {
# symbols on relocs.
setup_xfail "m68hc1*-*-*" "m6811-*-*" "m6812-*-*" "rl78-*-*"
setup_xfail "riscv*-*-*" "rx-*-*" "vax*-*-*" "xgate*-*-*" "z8k-*-*"
- setup_xfail "loongarch*-*-*"
+ setup_xfail "loongarch*-*-*" "avr-*-*"
run_dump_test redef2
setup_xfail "m68hc1*-*-*" "m6811-*-*" "m6812-*-*" "rl78-*-*"
setup_xfail "riscv*-*-*" "rx-*-*" "vax*-*-*" "xgate*-*-*" "z8k-*-*"
- setup_xfail "loongarch*-*-*"
+ setup_xfail "loongarch*-*-*" "avr-*-*"
# rs6000-aix disallows redefinition via .comm.
if [is_xcoff_format] {
setup_xfail *-*-*
diff --git a/gas/testsuite/gas/avr/diffreloc_withrelax.d b/gas/testsuite/gas/avr/diffreloc_withrelax.d
index 6d5bd2e..9d59e05 100644
--- a/gas/testsuite/gas/avr/diffreloc_withrelax.d
+++ b/gas/testsuite/gas/avr/diffreloc_withrelax.d
@@ -8,9 +8,9 @@
RELOCATION RECORDS FOR \[.text\]:
OFFSET TYPE VALUE
-00000000 R_AVR_CALL .text
+00000000 R_AVR_CALL L1
RELOCATION RECORDS FOR \[.data\]:
OFFSET TYPE VALUE
-00000000 R_AVR_DIFF16 .text\+0x00000004
+00000000 R_AVR_DIFF16 L2
diff --git a/gas/testsuite/gas/avr/pc-relative-reloc.d b/gas/testsuite/gas/avr/pc-relative-reloc.d
index cc22b0b..30d0df6 100644
--- a/gas/testsuite/gas/avr/pc-relative-reloc.d
+++ b/gas/testsuite/gas/avr/pc-relative-reloc.d
@@ -12,7 +12,7 @@ RELOCATION RECORDS FOR \[.text.main\]:
RELOCATION RECORDS FOR \[.debug_line\]:
OFFSET TYPE VALUE
-00000000 R_AVR_32_PCREL .debug_line_end-0x00000004
+00000000 R_AVR_32_PCREL .Ldebug_line_end-0x00000004
RELOCATION RECORDS FOR \[.debug_line.text.main\]:
diff --git a/gas/testsuite/gas/elf/elf.exp b/gas/testsuite/gas/elf/elf.exp
index 08105f8..c172ba3 100644
--- a/gas/testsuite/gas/elf/elf.exp
+++ b/gas/testsuite/gas/elf/elf.exp
@@ -184,7 +184,7 @@ if { [is_elf_format] } then {
# against ordinary symbols into relocations against section symbols.
# This is usually revealed by the error message:
# symbol `sym' required but not present
- setup_xfail "m681*-*-*" "m68hc*-*-*" "xgate-*-*" "vax-*-*"
+ setup_xfail "m681*-*-*" "m68hc*-*-*" "xgate-*-*" "vax-*-*" "avr-*-*"
run_dump_test redef
run_dump_test equ-reloc
}