1//===--- MSP430Target.def - MSP430 Feature/Processor Database----*- C++ -*-===//
2//
3//                     The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// This file defines the MSP430 devices and their features.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef MSP430_MCU_FEAT
15#define MSP430_MCU_FEAT(NAME, HWMULT) MSP430_MCU(NAME)
16#endif
17
18#ifndef MSP430_MCU
19#define MSP430_MCU(NAME)
20#endif
21
22MSP430_MCU("msp430c111")
23MSP430_MCU("msp430c1111")
24MSP430_MCU("msp430c112")
25MSP430_MCU("msp430c1121")
26MSP430_MCU("msp430c1331")
27MSP430_MCU("msp430c1351")
28MSP430_MCU("msp430e112")
29MSP430_MCU("msp430f110")
30MSP430_MCU("msp430f1101")
31MSP430_MCU("msp430f1101a")
32MSP430_MCU("msp430f1111")
33MSP430_MCU("msp430f1111a")
34MSP430_MCU("msp430f112")
35MSP430_MCU("msp430f1121")
36MSP430_MCU("msp430f1121a")
37MSP430_MCU("msp430f1122")
38MSP430_MCU("msp430f1132")
39MSP430_MCU("msp430f122")
40MSP430_MCU("msp430f1222")
41MSP430_MCU("msp430f123")
42MSP430_MCU("msp430f1232")
43MSP430_MCU("msp430f133")
44MSP430_MCU("msp430f135")
45MSP430_MCU("msp430f155")
46MSP430_MCU("msp430f156")
47MSP430_MCU("msp430f157")
48MSP430_MCU("msp430p112")
49MSP430_MCU("msp430f2001")
50MSP430_MCU("msp430f2011")
51MSP430_MCU("msp430f2002")
52MSP430_MCU("msp430f2012")
53MSP430_MCU("msp430f2003")
54MSP430_MCU("msp430f2013")
55MSP430_MCU("msp430f2101")
56MSP430_MCU("msp430f2111")
57MSP430_MCU("msp430f2121")
58MSP430_MCU("msp430f2131")
59MSP430_MCU("msp430f2112")
60MSP430_MCU("msp430f2122")
61MSP430_MCU("msp430f2132")
62MSP430_MCU("msp430f2232")
63MSP430_MCU("msp430f2252")
64MSP430_MCU("msp430f2272")
65MSP430_MCU("msp430f2234")
66MSP430_MCU("msp430f2254")
67MSP430_MCU("msp430f2274")
68MSP430_MCU("msp430g2211")
69MSP430_MCU("msp430g2201")
70MSP430_MCU("msp430g2111")
71MSP430_MCU("msp430g2101")
72MSP430_MCU("msp430g2001")
73MSP430_MCU("msp430g2231")
74MSP430_MCU("msp430g2221")
75MSP430_MCU("msp430g2131")
76MSP430_MCU("msp430g2121")
77MSP430_MCU("msp430g2102")
78MSP430_MCU("msp430g2202")
79MSP430_MCU("msp430g2302")
80MSP430_MCU("msp430g2402")
81MSP430_MCU("msp430g2132")
82MSP430_MCU("msp430g2232")
83MSP430_MCU("msp430g2332")
84MSP430_MCU("msp430g2432")
85MSP430_MCU("msp430g2112")
86MSP430_MCU("msp430g2212")
87MSP430_MCU("msp430g2312")
88MSP430_MCU("msp430g2412")
89MSP430_MCU("msp430g2152")
90MSP430_MCU("msp430g2252")
91MSP430_MCU("msp430g2352")
92MSP430_MCU("msp430g2452")
93MSP430_MCU("msp430g2113")
94MSP430_MCU("msp430g2213")
95MSP430_MCU("msp430g2313")
96MSP430_MCU("msp430g2413")
97MSP430_MCU("msp430g2513")
98MSP430_MCU("msp430g2153")
99MSP430_MCU("msp430g2253")
100MSP430_MCU("msp430g2353")
101MSP430_MCU("msp430g2453")
102MSP430_MCU("msp430g2553")
103MSP430_MCU("msp430g2203")
104MSP430_MCU("msp430g2303")
105MSP430_MCU("msp430g2403")
106MSP430_MCU("msp430g2233")
107MSP430_MCU("msp430g2333")
108MSP430_MCU("msp430g2433")
109MSP430_MCU("msp430g2533")
110MSP430_MCU("msp430tch5e")
111MSP430_MCU("msp430g2444")
112MSP430_MCU("msp430g2544")
113MSP430_MCU("msp430g2744")
114MSP430_MCU("msp430g2755")
115MSP430_MCU("msp430g2855")
116MSP430_MCU("msp430g2955")
117MSP430_MCU("msp430g2230")
118MSP430_MCU("msp430g2210")
119MSP430_MCU("msp430c311s")
120MSP430_MCU("msp430c312")
121MSP430_MCU("msp430c313")
122MSP430_MCU("msp430c314")
123MSP430_MCU("msp430c315")
124MSP430_MCU("msp430c323")
125MSP430_MCU("msp430c325")
126MSP430_MCU("msp430c412")
127MSP430_MCU("msp430c413")
128MSP430_MCU("msp430e313")
129MSP430_MCU("msp430e315")
130MSP430_MCU("msp430e325")
131MSP430_MCU("msp430p313")
132MSP430_MCU("msp430p315")
133MSP430_MCU("msp430p315s")
134MSP430_MCU("msp430p325")
135MSP430_MCU("msp430f412")
136MSP430_MCU("msp430f413")
137MSP430_MCU("msp430f415")
138MSP430_MCU("msp430f417")
139MSP430_MCU("msp430f4132")
140MSP430_MCU("msp430f4152")
141MSP430_MCU("msp430f435")
142MSP430_MCU("msp430f436")
143MSP430_MCU("msp430f437")
144MSP430_MCU("msp430f4351")
145MSP430_MCU("msp430f4361")
146MSP430_MCU("msp430f4371")
147MSP430_MCU("msp430fe423")
148MSP430_MCU("msp430fe425")
149MSP430_MCU("msp430fe427")
150MSP430_MCU("msp430fe423a")
151MSP430_MCU("msp430fe425a")
152MSP430_MCU("msp430fe427a")
153MSP430_MCU("msp430fe4232")
154MSP430_MCU("msp430fe4242")
155MSP430_MCU("msp430fe4252")
156MSP430_MCU("msp430fe4272")
157MSP430_MCU("msp430f4250")
158MSP430_MCU("msp430f4260")
159MSP430_MCU("msp430f4270")
160MSP430_MCU("msp430fg4250")
161MSP430_MCU("msp430fg4260")
162MSP430_MCU("msp430fg4270")
163MSP430_MCU("msp430fw423")
164MSP430_MCU("msp430fw425")
165MSP430_MCU("msp430fw427")
166MSP430_MCU("msp430fw428")
167MSP430_MCU("msp430fw429")
168MSP430_MCU("msp430fg437")
169MSP430_MCU("msp430fg438")
170MSP430_MCU("msp430fg439")
171MSP430_MCU("msp430f438")
172MSP430_MCU("msp430f439")
173MSP430_MCU("msp430f477")
174MSP430_MCU("msp430f478")
175MSP430_MCU("msp430f479")
176MSP430_MCU("msp430fg477")
177MSP430_MCU("msp430fg478")
178MSP430_MCU("msp430fg479")
179
180// With 16-bit hardware multiplier
181MSP430_MCU_FEAT("msp430f147", "16bit")
182MSP430_MCU_FEAT("msp430f148", "16bit")
183MSP430_MCU_FEAT("msp430f149", "16bit")
184MSP430_MCU_FEAT("msp430f1471", "16bit")
185MSP430_MCU_FEAT("msp430f1481", "16bit")
186MSP430_MCU_FEAT("msp430f1491", "16bit")
187MSP430_MCU_FEAT("msp430f167", "16bit")
188MSP430_MCU_FEAT("msp430f168", "16bit")
189MSP430_MCU_FEAT("msp430f169", "16bit")
190MSP430_MCU_FEAT("msp430f1610", "16bit")
191MSP430_MCU_FEAT("msp430f1611", "16bit")
192MSP430_MCU_FEAT("msp430f1612", "16bit")
193MSP430_MCU_FEAT("msp430c336", "16bit")
194MSP430_MCU_FEAT("msp430c337", "16bit")
195MSP430_MCU_FEAT("msp430e337", "16bit")
196MSP430_MCU_FEAT("msp430p337", "16bit")
197MSP430_MCU_FEAT("msp430f423", "16bit")
198MSP430_MCU_FEAT("msp430f425", "16bit")
199MSP430_MCU_FEAT("msp430f427", "16bit")
200MSP430_MCU_FEAT("msp430f423a", "16bit")
201MSP430_MCU_FEAT("msp430f425a", "16bit")
202MSP430_MCU_FEAT("msp430f427a", "16bit")
203MSP430_MCU_FEAT("msp430f4481", "16bit")
204MSP430_MCU_FEAT("msp430f4491", "16bit")
205MSP430_MCU_FEAT("msp430f447", "16bit")
206MSP430_MCU_FEAT("msp430f448", "16bit")
207MSP430_MCU_FEAT("msp430f449", "16bit")
208MSP430_MCU_FEAT("msp430f2330", "16bit")
209MSP430_MCU_FEAT("msp430f2350", "16bit")
210MSP430_MCU_FEAT("msp430f2370", "16bit")
211MSP430_MCU_FEAT("msp430f233", "16bit")
212MSP430_MCU_FEAT("msp430f235", "16bit")
213MSP430_MCU_FEAT("msp430f247", "16bit")
214MSP430_MCU_FEAT("msp430f248", "16bit")
215MSP430_MCU_FEAT("msp430f249", "16bit")
216MSP430_MCU_FEAT("msp430f2410", "16bit")
217MSP430_MCU_FEAT("msp430f2471", "16bit")
218MSP430_MCU_FEAT("msp430f2481", "16bit")
219MSP430_MCU_FEAT("msp430f2491", "16bit")
220MSP430_MCU_FEAT("msp430i2020", "16bit")
221MSP430_MCU_FEAT("msp430i2021", "16bit")
222MSP430_MCU_FEAT("msp430i2030", "16bit")
223MSP430_MCU_FEAT("msp430i2031", "16bit")
224MSP430_MCU_FEAT("msp430i2040", "16bit")
225MSP430_MCU_FEAT("msp430i2041", "16bit")
226MSP430_MCU_FEAT("msp430afe221", "16bit")
227MSP430_MCU_FEAT("msp430afe231", "16bit")
228MSP430_MCU_FEAT("msp430afe251", "16bit")
229MSP430_MCU_FEAT("msp430afe222", "16bit")
230MSP430_MCU_FEAT("msp430afe232", "16bit")
231MSP430_MCU_FEAT("msp430afe252", "16bit")
232MSP430_MCU_FEAT("msp430afe223", "16bit")
233MSP430_MCU_FEAT("msp430afe233", "16bit")
234MSP430_MCU_FEAT("msp430afe253", "16bit")
235
236// With 32 Bit Hardware Multiplier
237MSP430_MCU_FEAT("msp430f4783", "32bit")
238MSP430_MCU_FEAT("msp430f4793", "32bit")
239MSP430_MCU_FEAT("msp430f4784", "32bit")
240MSP430_MCU_FEAT("msp430f4794", "32bit")
241
242// Generic MSUs
243MSP430_MCU("msp430")
244MSP430_MCU("msp430i2xxgeneric")
245
246#undef MSP430_MCU
247#undef MSP430_MCU_FEAT
248