This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Committed: M32C: Fix scan for m32c architecture


Hi Guys,

  I am applying the patch below to fix the M32C port so that a scan for
  the "m32c" architecture (eg by running 'set architecture m32c' in gdb)
  will return the m32c architecture and not the m16c architecture.

Cheers
  Nick

bfd/ChangeLog
2010-01-13  Nick Clifton  <nickc@redhat.com>

	* cpu-m32c.c (m32c_scan): New function.  Ensures that a scan for
	"m32c" returns the m32c arch_info_struct and not the m16c
	arch_info_struct.
	(arch_info_struct): Use the new scan function.
	(bfd_m32c_arch): Likewise.

Index: bfd/cpu-m32c.c
===================================================================
RCS file: /cvs/src/src/bfd/cpu-m32c.c,v
retrieving revision 1.4
diff -c -3 -p -r1.4 cpu-m32c.c
*** bfd/cpu-m32c.c	2 Sep 2009 07:18:36 -0000	1.4
--- bfd/cpu-m32c.c	13 Jan 2010 14:31:33 -0000
***************
*** 22,27 ****
--- 22,40 ----
  #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_inf
*** 35,41 ****
      3,				/* section align power */
      FALSE,			/* the default ? */
      bfd_default_compatible,	/* architecture comparison fn */
!     bfd_default_scan,		/* string to architecture convert fn */
      NULL			/* next in list */
    },
  };
--- 48,54 ----
      3,				/* section align power */
      FALSE,			/* the default ? */
      bfd_default_compatible,	/* architecture comparison fn */
!     m32c_scan,			/* string to architecture convert fn */
      NULL			/* next in list */
    },
  };
*************** const bfd_arch_info_type bfd_m32c_arch =
*** 52,57 ****
    4,				/* Section align power.  */
    TRUE,				/* The default ?  */
    bfd_default_compatible,	/* Architecture comparison fn.  */
!   bfd_default_scan,		/* String to architecture convert fn.  */
    &arch_info_struct[0],		/* Next in list.  */
  };
--- 65,70 ----
    4,				/* Section align power.  */
    TRUE,				/* The default ?  */
    bfd_default_compatible,	/* Architecture comparison fn.  */
!   m32c_scan,			/* String to architecture convert fn.  */
    &arch_info_struct[0],		/* Next in list.  */
  };


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]