Move C-related declarations to compile-c.h
[deliverable/binutils-gdb.git] / bfd / cpu-m32c.c
index f61ff980f6381669e83e23ff46784f195059896f..04d0599a483da449e9a3f1cfb18c8ee914a74295 100644 (file)
@@ -1,11 +1,11 @@
 /* BFD support for the M16C/M32C processors.
 /* BFD support for the M16C/M32C processors.
-   Copyright (C) 2004, 2007 Free Software Foundation, Inc.
+   Copyright (C) 2004-2018 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
    This file is part of BFD, the Binary File Descriptor library.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+   MA 02110-1301, USA.  */
 
 #include "sysdep.h"
 #include "bfd.h"
 #include "libbfd.h"
 
 
 #include "sysdep.h"
 #include "bfd.h"
 #include "libbfd.h"
 
+/* Like bfd_default_scan but if the string is just "m32c" then
+   skip the m16c architecture.  */
+
+static bfd_boolean
+m32c_scan (const bfd_arch_info_type * info, const char * string)
+{
+  if (strcmp (string, "m32c") == 0
+      && info->mach == bfd_mach_m16c)
+    return FALSE;
+
+  return bfd_default_scan (info, string);
+}
+
 static const bfd_arch_info_type arch_info_struct[] =
 {
   {
 static const bfd_arch_info_type arch_info_struct[] =
 {
   {
@@ -34,7 +48,8 @@ static const bfd_arch_info_type arch_info_struct[] =
     3,                         /* section align power */
     FALSE,                     /* the default ? */
     bfd_default_compatible,    /* architecture comparison fn */
     3,                         /* section align power */
     FALSE,                     /* the default ? */
     bfd_default_compatible,    /* architecture comparison fn */
-    bfd_default_scan,          /* string to architecture convert fn */
+    m32c_scan,                 /* string to architecture convert fn */
+    bfd_arch_default_fill,     /* Default fill.  */
     NULL                       /* next in list */
   },
 };
     NULL                       /* next in list */
   },
 };
@@ -51,6 +66,7 @@ const bfd_arch_info_type bfd_m32c_arch =
   4,                           /* Section align power.  */
   TRUE,                                /* The default ?  */
   bfd_default_compatible,      /* Architecture comparison fn.  */
   4,                           /* Section align power.  */
   TRUE,                                /* The default ?  */
   bfd_default_compatible,      /* Architecture comparison fn.  */
-  bfd_default_scan,            /* String to architecture convert fn.  */
+  m32c_scan,                   /* String to architecture convert fn.  */
+  bfd_arch_default_fill,       /* Default fill.  */
   &arch_info_struct[0],                /* Next in list.  */
 };
   &arch_info_struct[0],                /* Next in list.  */
 };
This page took 0.024438 seconds and 4 git commands to generate.