Hi,

The attached patch adds support for the bfin bf592 part.

        * doc/invoke.texi (Blackfin Options): -mcpu accepts bf592.
        * config/bfin/t-bfin-elf (MULTILIB_MATCHES): Select bf532-none for
        bf592-none.
        * config/bfin/t-bfin-linux (MULTILIB_MATCHES): Likewise.
        * config/bfin/t-bfin-uclinux (MULTILIB_MATCHES): Likewise.
        * config/bfin/bfin.c (bfin_cpus): Add bf592.
        * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define
        __ADSPBF592__ and __ADSPBF59x__ for     BFIN_CPU_BF592.
        * config/bfin/bfin-opts.h (bfin_cpu_type): Add BFIN_CPU_BF592.
        * config/bfin/elf.h (LIB_SPEC): Add bf592.


Ok to add to trunk?

thanks,
Stu

Index: gcc/doc/invoke.texi
===================================================================
--- gcc/doc/invoke.texi (revision 173825)
+++ gcc/doc/invoke.texi (working copy)
@@ -10414,7 +10414,7 @@
 @samp{bf534}, @samp{bf536}, @samp{bf537}, @samp{bf538}, @samp{bf539},
 @samp{bf542}, @samp{bf544}, @samp{bf547}, @samp{bf548}, @samp{bf549},
 @samp{bf542m}, @samp{bf544m}, @samp{bf547m}, @samp{bf548m}, @samp{bf549m},
-@samp{bf561}.
+@samp{bf561}, @samp{bf592}.
 The optional @var{sirevision} specifies the silicon revision of the target
 Blackfin processor.  Any workarounds available for the targeted silicon 
revision
 will be enabled.  If @var{sirevision} is @samp{none}, no workarounds are 
enabled.
Index: gcc/config/bfin/t-bfin-elf
===================================================================
--- gcc/config/bfin/t-bfin-elf  (revision 173825)
+++ gcc/config/bfin/t-bfin-elf  (working copy)
@@ -58,6 +58,7 @@
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf549-none
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf549m-none
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf561-none
+MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf592-none

 MULTILIB_EXCEPTIONS=mleaf-id-shared-library*
 MULTILIB_EXCEPTIONS+=mcpu=bf532-none/mleaf-id-shared-library*
Index: gcc/config/bfin/bfin-opts.h
===================================================================
--- gcc/config/bfin/bfin-opts.h (revision 173825)
+++ gcc/config/bfin/bfin-opts.h (working copy)
@@ -53,7 +53,8 @@
   BFIN_CPU_BF548M,
   BFIN_CPU_BF549,
   BFIN_CPU_BF549M,
-  BFIN_CPU_BF561
+  BFIN_CPU_BF561,
+  BFIN_CPU_BF592
 } bfin_cpu_t;

 #endif
Index: gcc/config/bfin/elf.h
===================================================================
--- gcc/config/bfin/elf.h   (revision 173825)
+++ gcc/config/bfin/elf.h   (working copy)
@@ -51,6 +51,7 @@
                %{mmulticore:%{mcorea:-T bf561a.ld%s}} \
                %{mmulticore:%{mcoreb:-T bf561b.ld%s}} \
                %{mmulticore:%{!mcorea:%{!mcoreb:-T bf561m.ld%s}}}} \
+         %{mcpu=bf592*:-T bf592.ld%s} \
          %{!mcpu=*:%eno processor type specified for linking} \
          %{!mcpu=bf561*:-T bfin-common-sc.ld%s} \
          %{mcpu=bf561*:%{!mmulticore:-T bfin-common-sc.ld%s} \
Index: gcc/config/bfin/bfin.c
===================================================================
--- gcc/config/bfin/bfin.c  (revision 173825)
+++ gcc/config/bfin/bfin.c  (working copy)
@@ -350,6 +350,11 @@
    | WA_05000283 | WA_05000257 | WA_05000315 | WA_LOAD_LCREGS
    | WA_05000074},

+  {"bf592", BFIN_CPU_BF592, 0x0001,
+   WA_SPECULATIVE_LOADS | WA_05000074},
+  {"bf592", BFIN_CPU_BF592, 0x0000,
+   WA_SPECULATIVE_LOADS | WA_05000074},
+
   {NULL, BFIN_CPU_UNKNOWN, 0, 0}
 };

Index: gcc/config/bfin/bfin.h
===================================================================
--- gcc/config/bfin/bfin.h  (revision 173825)
+++ gcc/config/bfin/bfin.h  (working copy)
@@ -140,6 +140,10 @@
    case BFIN_CPU_BF561:            \
      builtin_define ("__ADSPBF561__"); \
      break;                \
+   case BFIN_CPU_BF592:            \
+     builtin_define ("__ADSPBF592__"); \
+     builtin_define ("__ADSPBF59x__"); \
+     break;                \
    }                   \
                        \
       if (bfin_si_revision != -1)      \
Index: gcc/config/bfin/t-bfin-uclinux
===================================================================
--- gcc/config/bfin/t-bfin-uclinux  (revision 173825)
+++ gcc/config/bfin/t-bfin-uclinux  (working copy)
@@ -58,6 +58,7 @@
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf549-none
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf549m-none
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf561-none
+MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf592-none

 MULTILIB_EXCEPTIONS=mleaf-id-shared-library*
 MULTILIB_EXCEPTIONS+=mcpu=bf532-none/mleaf-id-shared-library*
Index: gcc/config/bfin/t-bfin-linux
===================================================================
--- gcc/config/bfin/t-bfin-linux    (revision 173825)
+++ gcc/config/bfin/t-bfin-linux    (working copy)
@@ -57,6 +57,7 @@
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf549-none
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf549m-none
 MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf561-none
+MULTILIB_MATCHES+=mcpu?bf532-none=mcpu?bf592-none

 SHLIB_MAPFILES=$(srcdir)/config/bfin/libgcc-bfin.ver

Reply via email to