aboutsummaryrefslogtreecommitdiff
path: root/bfd/cpu-h8300.c
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/cpu-h8300.c')
-rw-r--r--bfd/cpu-h8300.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/bfd/cpu-h8300.c b/bfd/cpu-h8300.c
index b25842e..4e36952 100644
--- a/bfd/cpu-h8300.c
+++ b/bfd/cpu-h8300.c
@@ -1,5 +1,5 @@
/* BFD library support routines for the Hitachi H8/300 architecture.
- Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 2000
+ Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 2000, 2001
Free Software Foundation, Inc.
Hacked by Steve Chamberlain of Cygnus Support.
@@ -25,6 +25,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
int bfd_default_scan_num_mach ();
+static boolean h8300_scan
+ PARAMS ((const struct bfd_arch_info *, const char *));
+static const bfd_arch_info_type * compatible
+ PARAMS ((const bfd_arch_info_type *, const bfd_arch_info_type *));
+
static boolean
h8300_scan (info, string)
const struct bfd_arch_info *info;
@@ -52,6 +57,18 @@ h8300_scan (info, string)
string++;
if (*string == '-')
string++;
+
+ /* In ELF linker scripts, we typically express the architecture/machine
+ as architecture:machine.
+
+ So if we've matched so far and encounter a colon, try to match the
+ string following the colon. */
+ if (*string == ':')
+ {
+ string++;
+ h8300_scan (info, string);
+ }
+
if (*string == 'h' || *string == 'H')
{
return (info->mach == bfd_mach_h8300h);