CVS: gcc/gcc-3.3/gcc/config/msp430 msp430.c, 1.97, 1.98 msp430.h, 1.46, 1.47 t-msp430, 1.27, 1.28

"Sergey A. Borshch" <[email protected]> Thu, 9 Oct 2008 14:52:04 +0000
Newsgroups gmane.comp.hardware.texas-instruments.msp430.gcc.cvs
Message-ID <[email protected]>
Update of /cvsroot/mspgcc/gcc/gcc-3.3/gcc/config/msp430
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv6261/gcc-3.3/gcc/config/msp430

Modified Files:
	msp430.c msp430.h t-msp430 
Log Message:
* unaligned structure members access fixed:
  - -mstrict-align behaviour is always on as compiler produces wrong code without it
     (accessing packed structures or passing unaligned structures in registers),
  - -mstrict-align command line option removed.
  - #define STRUCTURE_SIZE_BOUNDARY 16 added
* linker invoking fixed (invoking ld relativly to msp430-gcc instead of searching msp430-ld in PATH)
* New cpu added:
  - F2112, F2122, F2132
  - G4250, G4260, G4270
  - E4232, E4242, E4252, E4272
  - F4351, F4361, F4371
  - F4783, F4784, F4793, F4794
  - F5418, F5419, F5435...F5438 (empty header file yet)


Index: msp430.c
===================================================================
RCS file: /cvsroot/mspgcc/gcc/gcc-3.3/gcc/config/msp430/msp430.c,v
retrieving revision 1.97
retrieving revision 1.98
diff -u -w -d -r1.97 -r1.98
--- msp430.c	18 Jun 2008 00:16:37 -0000	1.97
+++ msp430.c	9 Oct 2008 14:52:02 -0000	1.98
@@ -130,7 +130,9 @@
   MSP430_ISA_42 = 42,
   MSP430_ISA_43 = 43,
   MSP430_ISA_44 = 44,
-  MSP430_ISA_46 = 46
+  MSP430_ISA_46 = 46,
+  MSP430_ISA_47 = 47,
+  MSP430_ISA_54 = 54,
 };
 
 struct mcu_type_s
@@ -262,10 +264,19 @@
   {"msp430x4260",  MSP430_ISA_42, 0},
   {"msp430x4270",  MSP430_ISA_42, 0},
 
+  {"msp430xG4250", MSP430_ISA_42, 0},
+  {"msp430xG4260", MSP430_ISA_42, 0},
+  {"msp430xG4270", MSP430_ISA_42, 0},
+
   {"msp430xE423",  MSP430_ISA_42, 1},
   {"msp430xE425",  MSP430_ISA_42, 1},
   {"msp430xE427",  MSP430_ISA_42, 1},
 
+  {"msp430xE4232", MSP430_ISA_42, 1},
+  {"msp430xE4242", MSP430_ISA_42, 1},
+  {"msp430xE4252", MSP430_ISA_42, 1},
+  {"msp430xE4272", MSP430_ISA_42, 1},
+
   {"msp430xW423",  MSP430_ISA_42, 0},
   {"msp430xW425",  MSP430_ISA_42, 0},
   {"msp430xW427",  MSP430_ISA_42, 0},
@@ -278,6 +289,10 @@
   {"msp430x436",   MSP430_ISA_43, 0},
   {"msp430x437",   MSP430_ISA_43, 0},
 
+  {"msp430x4351",  MSP430_ISA_43, 0},
+  {"msp430x4361",  MSP430_ISA_43, 0},
+  {"msp430x4371",  MSP430_ISA_43, 0},
+
   {"msp430x447",   MSP430_ISA_44, 1},
   {"msp430x448",   MSP430_ISA_44, 1},
   {"msp430x449",   MSP430_ISA_44, 1},
@@ -287,6 +302,19 @@
   {"msp430xG4618", MSP430_ISA_46, 1},
   {"msp430xG4619", MSP430_ISA_46, 1},
 
+  {"msp430x4783",  MSP430_ISA_46, 1},
+  {"msp430x4784",  MSP430_ISA_46, 1},
+  {"msp430x4793",  MSP430_ISA_46, 1},
+  {"msp430x4794",  MSP430_ISA_46, 1},
+
+  /* F5xxx family */
+  {"msp430x5418",  MSP430_ISA_54, 1},
+  {"msp430x5419",  MSP430_ISA_54, 1},
+  {"msp430x5435",  MSP430_ISA_54, 1},
+  {"msp430x5436",  MSP430_ISA_54, 1},
+  {"msp430x5437",  MSP430_ISA_54, 1},
+  {"msp430x5438",  MSP430_ISA_54, 1},
+
   {NULL, 0, 0}
 };
 
@@ -495,19 +523,6 @@
   return t->arch;
 }
 
-int
-msp430_is_xarch ()
-{
-	switch (msp430_get_arch())
-	{
-		case MSP430_ISA_241:
-		case MSP430_ISA_26:
-		case MSP430_ISA_46:
-			return TRUE;
-	}
-    return FALSE;
-}
-
 void
 msp430_override_options ()
 {
@@ -670,12 +685,17 @@
        * .type   This_func1,@function
        *
        */
-      if (msp430_is_xarch())
+      switch (msp430_get_arch())
         {
+          case MSP430_ISA_241:
+          case MSP430_ISA_26:
+          case MSP430_ISA_46:
           vectors_start = 0xffc0;
-        }
-      else
-        {
+            break;
+          case MSP430_ISA_54:
+            vectors_start = 0xffc0;
+            break;
+          default:
           vectors_start = 0xffe0;
         }
     
@@ -2205,13 +2225,74 @@
 
   if (msp430_has_hwmul)
     {
+      switch (msp430_get_arch())
+        {
+          case MSP430_ISA_47:
       fprintf (file, "/* Hardware multiplier registers: */\n"
 	       "__MPY=0x130\n"
 	       "__MPYS=0x132\n"
 	       "__MAC=0x134\n"
 	       "__MACS=0x136\n"
 	       "__OP2=0x138\n"
-	       "__RESLO=0x13a\n" "__RESHI=0x13c\n" "__SUMEXT=0x13e\n" "\n");
+                 "__RESLO=0x13a\n"
+                 "__RESHI=0x13c\n"
+                 "__SUMEXT=0x13e\n"
+                 "__MPY32L=0x140\n"
+                 "__MPY32H=0x142\n"
+                 "__MPYS32L=0x144\n"
+                 "__MPYS32H=0x146\n"
+                 "__MAC32L=0x148\n"
+                 "__MAC32H=0x14a\n"
+                 "__MACS32L=0x14c\n"
+                 "__MACS32H=0x14e\n"
+                 "__OP2L=0x150\n"
+                 "__OP2H=0x152\n"
+                 "__RES0=0x154\n"
+                 "__RES1=0x156\n"
+                 "__RES2=0x158\n"
+                 "__RES3=0x15a\n"
+                 "__MPY32CTL0=0x15c\n"
+                 "\n");
+            break;
+          case MSP430_ISA_54:
+            fprintf (file, "/* Hardware multiplier registers: */\n"
+                 "__MPY=0x4c0\n"
+                 "__MPYS=0x4c2\n"
+                 "__MAC=0x4c4\n"
+                 "__MACS=0x4c6\n"
+                 "__OP2=0x4c8\n"
+                 "__RESLO=0x4ca\n"
+                 "__RESHI=0x4cc\n"
+                 "__SUMEXT=0x4ce\n"
+                 "__MPY32L=0x4d0\n"
+                 "__MPY32H=0x4d2\n"
+                 "__MPYS32L=0x4d4\n"
+                 "__MPYS32H=0x4d6\n"
+                 "__MAC32L=0x4d8\n"
+                 "__MAC32H=0x4da\n"
+                 "__MACS32L=0x4dc\n"
+                 "__MACS32H=0x4de\n"
+                 "__OP2L=0x4e0\n"
+                 "__OP2H=0x4e2\n"
+                 "__RES0=0x4e4\n"
+                 "__RES1=0x4e6\n"
+                 "__RES2=0x4e8\n"
+                 "__RES3=0x4ea\n"
+                 "__MPY32CTL0=0x4ec\n"
+                 "\n");
+            break;
+          default:
+            fprintf (file, "/* Hardware multiplier registers: */\n"
+                 "__MPY=0x130\n"
+                 "__MPYS=0x132\n"
+                 "__MAC=0x134\n"
+                 "__MACS=0x136\n"
+                 "__OP2=0x138\n"
+                 "__RESLO=0x13a\n" 
+                 "__RESHI=0x13c\n" 
+                 "__SUMEXT=0x13e\n" 
+                 "\n");
+        }
 
     }
 

Index: msp430.h
===================================================================
RCS file: /cvsroot/mspgcc/gcc/gcc-3.3/gcc/config/msp430/msp430.h,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -w -d -r1.46 -r1.47
--- msp430.h	18 Jun 2008 00:41:41 -0000	1.46
+++ msp430.h	9 Oct 2008 14:52:02 -0000	1.47
@@ -57,7 +57,6 @@
 #define MASK_RTL_DUMP		0x00000010
 #define MASK_ALL_DEBUG		0x00000FE0
 #define MASK_FORCE_HWMUL	0x00001000
-#define MASK_STRICT_ALIGN       0x00002000
 #define MASK_IAR		0x00004000
 #define MASK_NO_STACK_INIT	0x00008000
 #define MASK_NO_VOLAT_WRKAR	0x00010000
@@ -77,7 +76,6 @@
 #define TARGET_NOINT_HWMUL	(target_flags & MASK_NOINT_HWMUL)
 #define TARGET_RTL_DUMP		(target_flags & MASK_RTL_DUMP)
 #define TARGET_ALL_DEBUG 	(target_flags & MASK_ALL_DEBUG)
-#define TARGET_STRICT_ALIGN     (target_flags & MASK_STRICT_ALIGN)
 #define TARGET_IAR		(target_flags & MASK_IAR)
 #define TARGET_NSI		(target_flags & MASK_NO_STACK_INIT)
 #define TARGET_NVWA		(target_flags & MASK_NO_VOLAT_WRKAR)
@@ -92,7 +90,6 @@
   { "pgr", MASK_PROF_STACK,N_("Add stack information to profiler") }, \
   { "rtl", MASK_RTL_DUMP, NULL },					\
   { "deb", MASK_ALL_DEBUG, NULL },					\
-  { "strict-align", MASK_STRICT_ALIGN,N_("Strict alignment for all structures") }, \
   { "force-hwmul", MASK_FORCE_HWMUL,N_("Force hardware multiplier") },\
   { "disable-hwmul", MASK_NO_HWMUL, N_("Disable hardware multiplier") }, \
   { "inline-hwmul", MASK_INLINESIHWMUL, N_("Issue inline multiplication code for 32-bit integers") }, \
@@ -166,9 +163,12 @@
 /* No data type wants to be aligned rounder than this. */
 #define BIGGEST_ALIGNMENT 16
 
+/* Every structure's size must be a multiple of this.  */
+#define STRUCTURE_SIZE_BOUNDARY 16
+
 /* Define this if move instructions will actually fail to work
    when given unaligned data.  */
-#define STRICT_ALIGNMENT TARGET_STRICT_ALIGN
+#define STRICT_ALIGNMENT 1
 
 /* A C expression for the size in bits of the type `int' on the
      target machine.  If you don't define this, the default is one word.  */
@@ -2889,6 +2889,9 @@
 %{mmcu=msp430x2111:%(cpp_msp1) -D__MSP430_2111__} \
 %{mmcu=msp430x2121:%(cpp_msp1) -D__MSP430_2121__} \
 %{mmcu=msp430x2131:%(cpp_msp1) -D__MSP430_2131__} \
+%{mmcu=msp430x2112:%(cpp_msp1) -D__MSP430_2112__} \
+%{mmcu=msp430x2122:%(cpp_msp1) -D__MSP430_2122__} \
+%{mmcu=msp430x2132:%(cpp_msp1) -D__MSP430_2132__} \
 %{mmcu=msp430x2232:%(cpp_msp1) -D__MSP430_2232__} \
 %{mmcu=msp430x2252:%(cpp_msp1) -D__MSP430_2252__} \
 %{mmcu=msp430x2272:%(cpp_msp1) -D__MSP430_2272__} \
@@ -2934,9 +2937,16 @@
 %{mmcu=msp430x4250:%(cpp_msp1) -D__MSP430_4250__} \
 %{mmcu=msp430x4260:%(cpp_msp1) -D__MSP430_4260__} \
 %{mmcu=msp430x4270:%(cpp_msp1) -D__MSP430_4270__} \
+%{mmcu=msp430xG4250:%(cpp_msp1) -D__MSP430_G4250__} \
+%{mmcu=msp430xG4260:%(cpp_msp1) -D__MSP430_G4260__} \
+%{mmcu=msp430xG4270:%(cpp_msp1) -D__MSP430_G4270__} \
 %{mmcu=msp430xE423:%(cpp_msp2) -D__MSP430_E423__ -DMSP430_HAS_HWMUL} \
 %{mmcu=msp430xE425:%(cpp_msp2) -D__MSP430_E425__ -DMSP430_HAS_HWMUL} \
 %{mmcu=msp430xE427:%(cpp_msp2) -D__MSP430_E427__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430xE4232:%(cpp_msp2) -D__MSP430_E4232__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430xE4242:%(cpp_msp2) -D__MSP430_E4242__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430xE4252:%(cpp_msp2) -D__MSP430_E4252__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430xE4272:%(cpp_msp2) -D__MSP430_E4272__ -DMSP430_HAS_HWMUL} \
 %{mmcu=msp430xW423:%(cpp_msp1) -D__MSP430_W423__} \
 %{mmcu=msp430xW425:%(cpp_msp1) -D__MSP430_W425__} \
 %{mmcu=msp430xW427:%(cpp_msp1) -D__MSP430_W427__} \
@@ -2946,6 +2956,9 @@
 %{mmcu=msp430x435:%(cpp_msp1) -D__MSP430_435__} \
 %{mmcu=msp430x436:%(cpp_msp1) -D__MSP430_436__} \
 %{mmcu=msp430x437:%(cpp_msp1) -D__MSP430_437__} \
+%{mmcu=msp430x4351:%(cpp_msp1) -D__MSP430_4351__} \
+%{mmcu=msp430x4361:%(cpp_msp1) -D__MSP430_4361__} \
+%{mmcu=msp430x4371:%(cpp_msp1) -D__MSP430_4371__} \
 %{mmcu=msp430x447:%(cpp_msp2) -D__MSP430_447__ -DMSP430_HAS_HWMUL} \
 %{mmcu=msp430x448:%(cpp_msp2) -D__MSP430_448__ -DMSP430_HAS_HWMUL} \
 %{mmcu=msp430x449:%(cpp_msp2) -D__MSP430_449__ -DMSP430_HAS_HWMUL} \
@@ -2953,6 +2966,16 @@
 %{mmcu=msp430xG4617:%(cpp_msp2) -D__MSP430_G4617__ -D__MSP430X__ -DMSP430_HAS_HWMUL} \
 %{mmcu=msp430xG4618:%(cpp_msp2) -D__MSP430_G4618__ -D__MSP430X__ -DMSP430_HAS_HWMUL} \
 %{mmcu=msp430xG4619:%(cpp_msp2) -D__MSP430_G4619__ -D__MSP430X__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430x4783:%(cpp_msp2) -D__MSP430_4783__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430x4784:%(cpp_msp2) -D__MSP430_4784__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430x4793:%(cpp_msp2) -D__MSP430_4793__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430x4794:%(cpp_msp2) -D__MSP430_4794__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430x5418:%(cpp_msp2) -D__MSP430_5418__ -D__MSP430X__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430x5419:%(cpp_msp2) -D__MSP430_5419__ -D__MSP430X__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430x5435:%(cpp_msp2) -D__MSP430_5435__ -D__MSP430X__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430x5436:%(cpp_msp2) -D__MSP430_5436__ -D__MSP430X__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430x5437:%(cpp_msp2) -D__MSP430_5437__ -D__MSP430X__ -DMSP430_HAS_HWMUL} \
+%{mmcu=msp430x5438:%(cpp_msp2) -D__MSP430_5438__ -D__MSP430X__ -DMSP430_HAS_HWMUL} \
 %{mint8:-D__SIZE_TYPE__=long\\ unsigned\\ int -D__PTRDIFF_TYPE__=long -D__INT_MAX__=127} \
 %{!mint*:-D__SIZE_TYPE__=unsigned\\ int -D__PTRDIFF_TYPE__=int -D__INT_MAX__=32767} \
 %{posix:-D_POSIX_SOURCE} %{mIAR:-D_IAR_ASSEMBLER_}"
@@ -3057,6 +3080,9 @@
 %{mmcu=msp430x2111:-m msp430x2111 } \
 %{mmcu=msp430x2121:-m msp430x2121 } \
 %{mmcu=msp430x2131:-m msp430x2131 } \
+%{mmcu=msp430x2112:-m msp430x2112 } \
+%{mmcu=msp430x2122:-m msp430x2122 } \
+%{mmcu=msp430x2132:-m msp430x2132 } \
 %{mmcu=msp430x2232:-m msp430x2232 } \
 %{mmcu=msp430x2252:-m msp430x2252 } \
 %{mmcu=msp430x2272:-m msp430x2272 } \
@@ -3102,9 +3128,16 @@
 %{mmcu=msp430x4250:-m msp430x4250 } \
 %{mmcu=msp430x4260:-m msp430x4260 } \
 %{mmcu=msp430x4270:-m msp430x4270 } \
+%{mmcu=msp430xG4250:-m msp430xG4250 } \
+%{mmcu=msp430xG4260:-m msp430xG4260 } \
+%{mmcu=msp430xG4270:-m msp430xG4270 } \
 %{mmcu=msp430xE423:-m msp430xE423 } \
 %{mmcu=msp430xE425:-m msp430xE425 } \
 %{mmcu=msp430xE427:-m msp430xE427 } \
+%{mmcu=msp430xE4232:-m msp430xE4232 } \
+%{mmcu=msp430xE4242:-m msp430xE4242 } \
+%{mmcu=msp430xE4252:-m msp430xE4252 } \
+%{mmcu=msp430xE4272:-m msp430xE4272 } \
 %{mmcu=msp430xW423:-m msp430xW423 } \
 %{mmcu=msp430xW425:-m msp430xW425 } \
 %{mmcu=msp430xW427:-m msp430xW427 } \
@@ -3120,7 +3153,18 @@
 %{mmcu=msp430xG4616:-m msp430xG4616 } \
 %{mmcu=msp430xG4617:-m msp430xG4617 } \
 %{mmcu=msp430xG4618:-m msp430xG4618 } \
-%{mmcu=msp430xG4619:-m msp430xG4619 }"
+%{mmcu=msp430xG4619:-m msp430xG4619 } \
+%{mmcu=msp430x4783:-m msp430x4783 } \
+%{mmcu=msp430x4784:-m msp430x4784 } \
+%{mmcu=msp430x4793:-m msp430x4793 } \
+%{mmcu=msp430x4794:-m msp430x4794 } \
+%{mmcu=msp430x5418:-m msp430x5418 } \
+%{mmcu=msp430x5419:-m msp430x5419 } \
+%{mmcu=msp430x4135:-m msp430x5435 } \
+%{mmcu=msp430x4136:-m msp430x5436 } \
+%{mmcu=msp430x4137:-m msp430x5437 } \
+%{mmcu=msp430x4138:-m msp430x5438 } \
+"
 
 /* A C string constant that tells the GNU CC driver program options to
    pass to the linker.  It can also specify how to translate options
@@ -3163,9 +3207,6 @@
 
    Do not define this macro if it does not need to do anything.  */
 
-/* recently added:
-1222 1232 */
-
 #define CRT_BINUTILS_SPECS "\
 %{!mmcu=*|mmcu=msp430x110|mmcu=msp1:crt430x110.o%s} \
 %{mmcu=msp430x112:crt430x112.o%s} \
@@ -3207,12 +3248,20 @@
 %{mmcu=msp430x2111:crt430x2111.o%s} \
 %{mmcu=msp430x2121:crt430x2121.o%s} \
 %{mmcu=msp430x2131:crt430x2131.o%s} \
+%{mmcu=msp430x2112:crt430x2112.o%s} \
+%{mmcu=msp430x2122:crt430x2122.o%s} \
+%{mmcu=msp430x2132:crt430x2132.o%s} \
 %{mmcu=msp430x2232:crt430x2232.o%s} \
 %{mmcu=msp430x2252:crt430x2252.o%s} \
 %{mmcu=msp430x2272:crt430x2272.o%s} \
 %{mmcu=msp430x2234:crt430x2234.o%s} \
 %{mmcu=msp430x2254:crt430x2254.o%s} \
 %{mmcu=msp430x2274:crt430x2274.o%s} \
+%{mmcu=msp430x233:crt430x233.o%s} \
+%{mmcu=msp430x235:crt430x235.o%s} \
+%{mmcu=msp430x2330:crt430x2330.o%s} \
+%{mmcu=msp430x2350:crt430x2350.o%s} \
+%{mmcu=msp430x2370:crt430x2370.o%s} \
 %{mmcu=msp430x247:crt430x247.o%s} \
 %{mmcu=msp430x248:crt430x248.o%s} \
 %{mmcu=msp430x249:crt430x249.o%s} \
@@ -3247,9 +3296,16 @@
 %{mmcu=msp430x4250:crt430x4250.o%s} \
 %{mmcu=msp430x4260:crt430x4260.o%s} \
 %{mmcu=msp430x4270:crt430x4270.o%s} \
+%{mmcu=msp430xG4250:crt430xG4250.o%s} \
+%{mmcu=msp430xG4260:crt430xG4260.o%s} \
+%{mmcu=msp430xG4270:crt430xG4270.o%s} \
 %{mmcu=msp430xE423:crt430xE423.o%s} \
 %{mmcu=msp430xE425:crt430xE425.o%s} \
 %{mmcu=msp430xE427:crt430xE427.o%s} \
+%{mmcu=msp430xE4232:crt430xE4232.o%s} \
+%{mmcu=msp430xE4242:crt430xE4242.o%s} \
+%{mmcu=msp430xE4252:crt430xE4252.o%s} \
+%{mmcu=msp430xE4272:crt430xE4272.o%s} \
 %{mmcu=msp430xW423:crt430xW423.o%s} \
 %{mmcu=msp430xW425:crt430xW425.o%s} \
 %{mmcu=msp430xW427:crt430xW427.o%s} \
@@ -3259,13 +3315,23 @@
 %{mmcu=msp430x435:crt430x435.o%s} \
 %{mmcu=msp430x436:crt430x436.o%s} \
 %{mmcu=msp430x437:crt430x437.o%s} \
+%{mmcu=msp430x4351:crt430x4351.o%s} \
+%{mmcu=msp430x4361:crt430x4361.o%s} \
+%{mmcu=msp430x4371:crt430x4371.o%s} \
 %{mmcu=msp430x447:crt430x447.o%s} \
 %{mmcu=msp430x448:crt430x448.o%s} \
 %{mmcu=msp430x449:crt430x449.o%s} \
 %{mmcu=msp430xG4616:crt430xG4616.o%s} \
 %{mmcu=msp430xG4617:crt430xG4617.o%s} \
 %{mmcu=msp430xG4618:crt430xG4618.o%s} \
-%{mmcu=msp430xG4619:crt430xG4619.o%s}"
+%{mmcu=msp430xG4619:crt430xG4619.o%s}\
+%{mmcu=msp430x5418:crt430x5418.o%s} \
+%{mmcu=msp430x5419:crt430x5419.o%s}\
+%{mmcu=msp430x5435:crt430x5435.o%s} \
+%{mmcu=msp430x5436:crt430x5436.o%s} \
+%{mmcu=msp430x5437:crt430x5437.o%s} \
+%{mmcu=msp430x5438:crt430x5438.o%s} \
+"
 
 
 
@@ -3325,7 +3391,7 @@
 #define MULTILIB_DEFAULTS { "mmcu=msp430x110" }
 
 /* This is undefined macro for collect2 disabling */
-#define LINKER_NAME "msp430-ld"
+#define LINKER_NAME "ld"
 
 #define TEST_HARD_REG_CLASS(CLASS, REGNO) \
   TEST_HARD_REG_BIT (reg_class_contents[ (int) (CLASS)], REGNO)

Index: t-msp430
===================================================================
RCS file: /cvsroot/mspgcc/gcc/gcc-3.3/gcc/config/msp430/t-msp430,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -w -d -r1.27 -r1.28
--- t-msp430	26 May 2008 23:12:44 -0000	1.27
+++ t-msp430	9 Oct 2008 14:52:02 -0000	1.28
@@ -83,8 +83,11 @@
 	mmcu?msp1=mmcu?msp430x2003  mmcu?msp1=mmcu?msp430x2013 \
 	mmcu?msp1=mmcu?msp430x2101  mmcu?msp1=mmcu?msp430x2111  mmcu?msp1=mmcu?msp430x2121 \
 	mmcu?msp1=mmcu?msp430x2131 \
+	mmcu?msp1=mmcu?msp430x2112  mmcu?msp1=mmcu?msp430x2122 \
 	mmcu?msp1=mmcu?msp430x2232  mmcu?msp1=mmcu?msp430x2252  mmcu?msp1=mmcu?msp430x2272 \
 	mmcu?msp1=mmcu?msp430x2234  mmcu?msp1=mmcu?msp430x2254  mmcu?msp1=mmcu?msp430x2274 \
+	mmcu?msp2=mmcu?msp430x233   mmcu?msp2=mmcu?msp430x235 \
+	mmcu?msp2=mmcu?msp430x2330  mmcu?msp2=mmcu?msp430x2350  mmcu?msp2=mmcu?msp430x2370 \
 	mmcu?msp2=mmcu?msp430x247   mmcu?msp2=mmcu?msp430x248   mmcu?msp2=mmcu?msp430x249 \
 	mmcu?msp2=mmcu?msp430x2410 \
 	mmcu?msp2=mmcu?msp430x2471  mmcu?msp2=mmcu?msp430x2481  mmcu?msp2=mmcu?msp430x2491 \
@@ -100,13 +103,24 @@
 	mmcu?msp1=mmcu?msp430x415   mmcu?msp1=mmcu?msp430x417 \
 	mmcu?msp2=mmcu?msp430x423   mmcu?msp2=mmcu?msp430x425   mmcu?msp2=mmcu?msp430x427 \
 	mmcu?msp1=mmcu?msp430x4250  mmcu?msp1=mmcu?msp430x4260  mmcu?msp1=mmcu?msp430x4270 \
+	mmcu?msp1=mmcu?msp430xG4250 mmcu?msp1=mmcu?msp430xG4260 mmcu?msp1=mmcu?msp430xG4270 \
 	mmcu?msp2=mmcu?msp430xE423  mmcu?msp2=mmcu?msp430xE425  mmcu?msp2=mmcu?msp430xE427 \
+	mmcu?msp2=mmcu?msp430xE4232 mmcu?msp2=mmcu?msp430xE4242 mmcu?msp2=mmcu?msp430xE4252 \
+	mmcu?msp2=mmcu?msp430xE4272 \
 	mmcu?msp1=mmcu?msp430xW423  mmcu?msp1=mmcu?msp430xW425  mmcu?msp1=mmcu?msp430xW427 \
 	mmcu?msp1=mmcu?msp430xG437  mmcu?msp1=mmcu?msp430xG438  mmcu?msp1=mmcu?msp430xG439 \
 	mmcu?msp1=mmcu?msp430x435   mmcu?msp1=mmcu?msp430x436   mmcu?msp1=mmcu?msp430x437 \
+	mmcu?msp1=mmcu?msp430x4351  mmcu?msp1=mmcu?msp430x4361  mmcu?msp1=mmcu?msp430x4371 \
 	mmcu?msp2=mmcu?msp430x447   mmcu?msp2=mmcu?msp430x448   mmcu?msp2=mmcu?msp430x449 \
 	mmcu?msp2=mmcu?msp430xG4616 mmcu?msp2=mmcu?msp430xG4617 mmcu?msp2=mmcu?msp430xG4618 \
-    mmcu?msp2=mmcu?msp430xG4619
+	mmcu?msp2=mmcu?msp430xG4619 \
+	mmcu?msp2=mmcu?msp430x4783  mmcu?msp2=mmcu?msp430x4784  mmcu?msp2=mmcu?msp430x4793 \
+	mmcu?msp2=mmcu?msp430x4794 \
+	mmcu?msp2=mmcu?msp430x5418 mmcu?msp2=mmcu?msp430x5419 \
+	mmcu?msp2=mmcu?msp430x5435 mmcu?msp2=mmcu?msp430x5436 mmcu?msp2=mmcu?msp430x5437 \
+	mmcu?msp2=mmcu?msp430x5438
+#todo: 47xx has 32*32 HW MUL
+#todo: 54xx has 32*32 HW MUL
 
 MULTILIB_EXCEPTIONS =
 


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/