* bfd/cpu-arm.c (bfd_is_arm_mapping_symbol_name): Accept more
	mapping symbols.
diff --git a/ChangeLog.csl b/ChangeLog.csl
index 482adb0..c610b84 100644
--- a/ChangeLog.csl
+++ b/ChangeLog.csl
@@ -1,5 +1,10 @@
 2006-04-11  Daniel Jacobowitz  <dan@codesourcery.com>
 
+	* bfd/cpu-arm.c (bfd_is_arm_mapping_symbol_name): Accept more
+	mapping symbols.
+
+2006-04-11  Daniel Jacobowitz  <dan@codesourcery.com>
+
 	Backport:
 	2006-03-09  Paul Brook  <paul@codesourcery.com>
 	* bfd/cpu-arm.c (bfd_is_arm_mapping_symbol_name): Recognise additional
diff --git a/bfd/cpu-arm.c b/bfd/cpu-arm.c
index a28a1f9..0f0da06 100644
--- a/bfd/cpu-arm.c
+++ b/bfd/cpu-arm.c
@@ -405,11 +405,11 @@
 bfd_is_arm_mapping_symbol_name (const char * name)
 {
   /* The ARM compiler outputs several obsolete forms.  Recognize them
-     in addition to the standard $a, $t and $d.  */
+     in addition to the standard $a, $t and $d.  We are somewhat loose
+     in what we accept here, since the full set is not documented.  */
   return (name != NULL)
     && (name[0] == '$')
-    && ((name[1] == 'a') || (name[1] == 't') || (name[1] == 'd')
-	|| (name[1] == 'm') || (name[1] == 'f') || (name[1] == 'p'))
+    && (name[1] >= 'a' && name[1] <= 'z')
     && (name[2] == 0 || name[2] == '.');
 }