gas: detect DCTI couples in sparc
[deliverable/binutils-gdb.git] / bfd / cpu-powerpc.c
index 19604c3b9785cc50d9a4bb3443f55eef60f14224..fd72cd1a529af7067bd260ad1554c3c78172f578 100644 (file)
@@ -1,6 +1,5 @@
 /* BFD PowerPC CPU definition
-   Copyright 1994, 1995, 1996, 2000, 2001, 2002, 2003, 2005, 2007, 2008,
-   2010, 2012 Free Software Foundation, Inc.
+   Copyright (C) 1994-2016 Free Software Foundation, Inc.
    Contributed by Ian Lance Taylor, Cygnus Support.
 
    This file is part of BFD, the Binary File Descriptor library.
 
 /* The common PowerPC architecture is compatible with the RS/6000.  */
 
-static const bfd_arch_info_type *powerpc_compatible
-  PARAMS ((const bfd_arch_info_type *, const bfd_arch_info_type *));
-
 static const bfd_arch_info_type *
-powerpc_compatible (a,b)
-     const bfd_arch_info_type *a;
-     const bfd_arch_info_type *b;
+powerpc_compatible (const bfd_arch_info_type *a,
+                   const bfd_arch_info_type *b)
 {
   BFD_ASSERT (a->arch == bfd_arch_powerpc);
   switch (b->arch)
@@ -40,6 +35,10 @@ powerpc_compatible (a,b)
     default:
       return NULL;
     case bfd_arch_powerpc:
+      if (a->mach == bfd_mach_ppc_vle && b->bits_per_word == 32)
+       return a;
+      if (b->mach == bfd_mach_ppc_vle && a->bits_per_word == 32)
+       return b;
       return bfd_default_compatible (a, b);
     case bfd_arch_rs6000:
       if (b->mach == bfd_mach_rs6k)
@@ -375,6 +374,21 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
     bfd_arch_default_fill,
     &bfd_powerpc_archs[19]
   },
+  {
+    16, /* 16 or 32 bits in a word */
+    32, /* 32 bits in an address */
+    8,  /* 8 bits in a byte */
+    bfd_arch_powerpc,
+    bfd_mach_ppc_vle,
+    "powerpc",
+    "powerpc:vle",
+    3,
+    FALSE, /* not the default */
+    powerpc_compatible,
+    bfd_default_scan,
+    bfd_arch_default_fill,
+    &bfd_powerpc_archs[20]
+  },
   {
     64, /* 64 bits in a word */
     64, /* 64 bits in an address */
@@ -388,7 +402,7 @@ const bfd_arch_info_type bfd_powerpc_archs[] =
     powerpc_compatible,
     bfd_default_scan,
     bfd_arch_default_fill,
-    &bfd_powerpc_archs[20]
+    &bfd_powerpc_archs[21]
   },
   {
     64, /* 64 bits in a word */
This page took 0.025917 seconds and 4 git commands to generate.