pr27228 testcase

Alan Modra amodra@gmail.com
Tue Jan 26 10:26:46 GMT 2021


This failed on ft32, hppa, and mips-irix targets.  In the case of ft32
the problem was iterating over an array in reverse and not using the
proper condition, so BFD_RELOC_NONE was not recognised.

bfd/
	* elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0].
gas/
	PR 27282
	* testsuite/gas/all/none.d: Replace skip with xfail, don't xfail ft32.
	* testsuite/gas/elf/pr27228.d: xfail hppa and allow OBJECT match.

diff --git a/bfd/elf32-ft32.c b/bfd/elf32-ft32.c
index bd0ed3e81d3..5a6ec764804 100644
--- a/bfd/elf32-ft32.c
+++ b/bfd/elf32-ft32.c
@@ -267,8 +267,7 @@ ft32_reloc_type_lookup (bfd *abfd ATTRIBUTE_UNUSED,
 {
   unsigned int i;
 
-  for (i = sizeof (ft32_reloc_map) / sizeof (ft32_reloc_map[0]);
-       --i;)
+  for (i = 0; i < sizeof (ft32_reloc_map) / sizeof (ft32_reloc_map[0]); i++)
     if (ft32_reloc_map [i].bfd_reloc_val == code)
       return & ft32_elf_howto_table [ft32_reloc_map[i].ft32_reloc_val];
 
diff --git a/gas/testsuite/gas/all/none.d b/gas/testsuite/gas/all/none.d
index deebab8b49c..374808a4f59 100644
--- a/gas/testsuite/gas/all/none.d
+++ b/gas/testsuite/gas/all/none.d
@@ -1,7 +1,7 @@
 #objdump: -r -w
 #as: --generate-missing-build-notes=no
 # The HPPA maps R_PARISC_PCREL64 onto BFD_RELOC_NONE.
-#skip: ft32-*-* hppa*-*-*
+#xfail: hppa*-*-*
 
 #...
 0+ .*(NONE|NULL|UNUSED0) +\*ABS\*
diff --git a/gas/testsuite/gas/elf/pr27228.d b/gas/testsuite/gas/elf/pr27228.d
index a44a61ec0fd..da336ff2191 100644
--- a/gas/testsuite/gas/elf/pr27228.d
+++ b/gas/testsuite/gas/elf/pr27228.d
@@ -1,8 +1,10 @@
 #as:
 #name: .reloc against undefined local symbol (PR 27228)
 #readelf: -sW
+# hppa doesn't support use of any BFD_RELOC_*
+#xfail: hppa*-*-*
 
 Symbol table '\.symtab' contains [0-9]+ entries:
 #...
- +[a-f0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND .LTHUNK5.lto_priv.0
+ +[a-f0-9]+: 0+ +0 (NOTYPE|OBJECT) +GLOBAL DEFAULT +UND .LTHUNK5.lto_priv.0
 #pass

-- 
Alan Modra
Australia Development Lab, IBM


More information about the Binutils mailing list