]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
msp430.c (msp430x_names): New array.
authorNick Clifton <nickc@redhat.com>
Mon, 30 Sep 2013 08:58:53 +0000 (08:58 +0000)
committerNick Clifton <nickc@gcc.gnu.org>
Mon, 30 Sep 2013 08:58:53 +0000 (08:58 +0000)
* config/msp430/msp430.c (msp430x_names): New array.  Lists MCUs
that use the MSP430X ISA.
(msp430_option_override): Scan -mmcu command line option for any
MCU name that supports the MSP430X ISA.
* config/msp430/t-msp430 (MULTILIB_MATCHES): Add matches for known
-mmcu options which enable the MSP430X ISA.

From-SVN: r203026

gcc/ChangeLog
gcc/config/msp430/msp430.c
gcc/config/msp430/t-msp430

index abd42c5a9e73f7183c2da672a2e97f5778b4128a..3bebb34d29d610835b5c0d107226d2dab777ac10 100644 (file)
@@ -1,3 +1,12 @@
+2013-09-30  Nick Clifton  <nickc@redhat.com>
+
+       * config/msp430/msp430.c (msp430x_names): New array.  Lists MCUs
+       that use the MSP430X ISA.
+       (msp430_option_override): Scan -mmcu command line option for any
+       MCU name that supports the MSP430X ISA.
+       * config/msp430/t-msp430 (MULTILIB_MATCHES): Add matches for known
+       -mmcu options which enable the MSP430X ISA.
+
 2013-09-30  Richard Biener  <rguenther@suse.de>
 
        PR middle-end/58532
index ae6e6a91492d92e8aaf0f11a08b06c1360a35ac5..a1e2f81e648a031aa1a5dcc2b0227234dd0f8f0e 100644 (file)
@@ -109,15 +109,89 @@ msp430_handle_option (struct gcc_options *opts ATTRIBUTE_UNUSED,
 #undef  TARGET_OPTION_OVERRIDE
 #define TARGET_OPTION_OVERRIDE         msp430_option_override
 
+static const char * msp430x_names [] =
+{
+  "msp430x",   /* Generic name.  */
+  "msp430xv2", /* Generic name.  */
+
+  /* These names have been provided by TI and match the names currently
+     supported by GAS.
+
+     NB/ This list should be kept in sync with the ones in:
+       gcc/config/msp430/t-msp430
+       gas/config/tc-msp430.c
+
+     FIXME: We ought to read the names in from a file at run, rather
+     than having them built in like this.  Also such a file should be
+     shared with gas.  */
+  
+  "msp430cg4616", "msp430cg4617", "msp430cg4618", "msp430cg4619", "msp430f2416",
+  "msp430f2417",  "msp430f2418",  "msp430f2419",  "msp430f2616",  "msp430f2617",
+  "msp430f2618",  "msp430f2619",  "msp430f47126", "msp430f47127", "msp430f47163",
+  "msp430f47173", "msp430f47183", "msp430f47193", "msp430f47166", "msp430f47176",
+  "msp430f47186", "msp430f47196", "msp430f47167", "msp430f47177", "msp430f47187",
+  "msp430f47197", "msp430f46161", "msp430f46171", "msp430f46181", "msp430f46191",
+  "msp430f4616",  "msp430f4617",  "msp430f4618",  "msp430f4619",  "msp430fg4616",
+  "msp430fg4617", "msp430fg4618", "msp430fg4619", "msp430f5418",  "msp430f5419",
+  "msp430f5435",  "msp430f5436",  "msp430f5437",  "msp430f5438",  "msp430f5418a",
+  "msp430f5419a", "msp430f5435a", "msp430f5436a", "msp430f5437a", "msp430f5438a",
+  "msp430f5212",  "msp430f5213",  "msp430f5214",  "msp430f5217",  "msp430f5218",
+  "msp430f5219",  "msp430f5222",  "msp430f5223",  "msp430f5224",  "msp430f5227",
+  "msp430f5228",  "msp430f5229",  "msp430f5304",  "msp430f5308",  "msp430f5309",
+  "msp430f5310",  "msp430f5340",  "msp430f5341",  "msp430f5342",  "msp430f5324",
+  "msp430f5325",  "msp430f5326",  "msp430f5327",  "msp430f5328",  "msp430f5329",
+  "msp430f5500",  "msp430f5501",  "msp430f5502",  "msp430f5503",  "msp430f5504",
+  "msp430f5505",  "msp430f5506",  "msp430f5507",  "msp430f5508",  "msp430f5509",
+  "msp430f5510",  "msp430f5513",  "msp430f5514",  "msp430f5515",  "msp430f5517",
+  "msp430f5519",  "msp430f5521",  "msp430f5522",  "msp430f5524",  "msp430f5525",
+  "msp430f5526",  "msp430f5527",  "msp430f5528",  "msp430f5529",   "cc430f5133",
+  "cc430f5135",    "cc430f5137",   "cc430f6125",   "cc430f6126",   "cc430f6127",
+  "cc430f6135",    "cc430f6137",   "cc430f5123",   "cc430f5125",   "cc430f5143",
+  "cc430f5145",    "cc430f5147",   "cc430f6143",   "cc430f6145",   "cc430f6147",
+  "msp430f5333",  "msp430f5335",  "msp430f5336",  "msp430f5338",  "msp430f5630",
+  "msp430f5631",  "msp430f5632",  "msp430f5633",  "msp430f5634",  "msp430f5635",
+  "msp430f5636",  "msp430f5637",  "msp430f5638",  "msp430f6433",  "msp430f6435",
+  "msp430f6436",  "msp430f6438",  "msp430f6630",  "msp430f6631",  "msp430f6632",
+  "msp430f6633",  "msp430f6634",  "msp430f6635",  "msp430f6636",  "msp430f6637",
+  "msp430f6638",  "msp430f5358",  "msp430f5359",  "msp430f5658",  "msp430f5659",
+  "msp430f6458",  "msp430f6459",  "msp430f6658",  "msp430f6659",  "msp430f5131",
+  "msp430f5151",  "msp430f5171",  "msp430f5132",  "msp430f5152",  "msp430f5172",
+  "msp430f6720",  "msp430f6721",  "msp430f6723",  "msp430f6724",  "msp430f6725",
+  "msp430f6726",  "msp430f6730",  "msp430f6731",  "msp430f6733",  "msp430f6734",
+  "msp430f6735",  "msp430f6736",  "msp430f67451", "msp430f67651", "msp430f67751",
+  "msp430f67461", "msp430f67661", "msp430f67761", "msp430f67471", "msp430f67671",
+  "msp430f67771", "msp430f67481", "msp430f67681", "msp430f67781", "msp430f67491",
+  "msp430f67691", "msp430f67791", "msp430f6745",  "msp430f6765",  "msp430f6775",
+  "msp430f6746",  "msp430f6766",  "msp430f6776",  "msp430f6747",  "msp430f6767",
+  "msp430f6777",  "msp430f6748",  "msp430f6768",  "msp430f6778",  "msp430f6749",
+  "msp430f6769",  "msp430f6779",  "msp430fr5720", "msp430fr5721", "msp430fr5722",
+  "msp430fr5723", "msp430fr5724", "msp430fr5725", "msp430fr5726", "msp430fr5727",
+  "msp430fr5728", "msp430fr5729", "msp430fr5730", "msp430fr5731", "msp430fr5732",
+  "msp430fr5733", "msp430fr5734", "msp430fr5735", "msp430fr5736", "msp430fr5737",
+  "msp430fr5738", "msp430fr5739", "msp430bt5190", "msp430fr5949", "msp430fr5969",
+  "msp430sl5438a"
+};
+  
 static void
 msp430_option_override (void)
 {
   init_machine_status = msp430_init_machine_status;
 
-  if (target_cpu
-      && (strstr (target_cpu, "430x")
-         || strstr (target_cpu, "430X")))
-    msp430x = true;
+  if (target_cpu)
+    {
+      unsigned i;
+
+      for (i = ARRAY_SIZE (msp430x_names); i--;)
+       if (strcasecmp (target_cpu, msp430x_names[i]))
+         {
+           msp430x = true;
+           break;
+         }
+      /* Note - it is not an error if we did not recognize the MCU
+        name.  The msp430x_names array only contains those MCU names
+        which are currently known to use the MSP430X ISA.  There are
+        lots of other MCUs which just use the MSP430 ISA.  */
+    }
 
   if (TARGET_LARGE && !msp430x)
     error ("-mlarge requires a 430X-compatible -mmcu=");
index c7048378da4cbb99b09b306e5dc85ebb79313611..52f0f4c184530dbc16f71fe55970b11ca6115d5f 100644 (file)
@@ -26,14 +26,235 @@ MULTILIB_DIRNAMES   = 430x large
 # Match msp430X with msp430x.
 MULTILIB_MATCHES    = mmcu?msp430x=mmcu?msp430X
 
-# each supported MCU needs a line like this:
-# MULTILIB_MATCHES  += mmcu?msp430x123=mmcu?msp430x
-
-# The only way I figured this out was to hack the script to SHOW me
-# what it's doing.  It's non-obvious, but it matches the directory
-# structure of the multilib tree, but using the options, not the
-# directory names.  A shell CASE statement is generated from these, so
-# the usual CASE wildcards are supported.
+# each supported X or Xv2 MCU needs a line like this:
+# MULTILIB_MATCHES  += mmcu?msp430x=mmcu?xxxxxxxxxx
+
+# NB/ This list should be kept in sync with the ones in:
+#  gcc/config/msp430/msp430.c
+#  gas/config/tc-msp430.c
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430xv2
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430cg4616
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430cg4617
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430cg4618
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430cg4619
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f2416
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f2417
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f2418
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f2419
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f2616
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f2617
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f2618
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f2619
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47126
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47127
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47163
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47173
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47183
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47193
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47166
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47176
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47186
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47196
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47167
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47177
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47187
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f47197
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f46161
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f46171
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f46181
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f46191
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f4616
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f4617
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f4618
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f4619
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fg4616
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fg4617
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fg4618
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fg4619
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5418
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5419
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5435
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5436
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5437
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5438
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5418a
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5419a
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5435a
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5436a
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5437a
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5438a
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5212
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5213
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5214
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5217
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5218
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5219
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5222
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5223
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5224
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5227
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5228
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5229
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5304
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5308
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5309
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5310
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5340
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5341
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5342
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5324
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5325
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5326
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5327
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5328
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5329
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5500
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5501
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5502
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5503
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5504
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5505
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5506
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5507
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5508
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5509
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5510
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5513
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5514
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5515
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5517
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5519
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5521
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5522
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5524
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5525
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5526
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5527
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5528
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5529
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f5133
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f5135
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f5137
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f6125
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f6126
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f6127
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f6135
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f6137
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f5123
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f5125
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f5143
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f5145
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f5147
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f6143
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f6145
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?cc430f6147
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5333
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5335
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5336
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5338
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5630
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5631
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5632
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5633
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5634
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5635
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5636
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5637
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5638
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6433
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6435
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6436
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6438
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6630
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6631
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6632
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6633
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6634
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6635
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6636
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6637
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6638
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5358
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5359
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5658
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5659
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6458
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6459
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6658
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6659
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5131
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5151
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5171
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5132
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5152
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f5172
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6720
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6721
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6723
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6724
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6725
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6726
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6730
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6731
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6733
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6734
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6735
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6736
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67451
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67651
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67751
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67461
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67661
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67761
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67471
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67671
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67771
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67481
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67681
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67781
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67491
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67691
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f67791
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6745
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6765
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6775
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6746
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6766
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6776
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6747
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6767
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6777
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6748
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6768
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6778
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6749
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6769
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430f6779
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5720
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5721
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5722
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5723
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5724
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5725
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5726
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5727
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5728
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5729
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5730
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5731
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5732
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5733
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5734
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5735
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5736
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5737
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5738
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5739
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430bt5190
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5949
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430fr5969
+MULTILIB_MATCHES += mmcu?msp430x=mmcu?msp430sl5438a
+  
 
 MULTILIB_EXCEPTIONS = mlarge