Statistics
| Branch: | Revision:

root / target-ppc / cpu-models.c @ 9baea4a3

History | View | Annotate | Download (64.1 kB)

1
/*
2
 *  PowerPC CPU initialization for qemu.
3
 *
4
 *  Copyright (c) 2003-2007 Jocelyn Mayer
5
 *  Copyright 2011 Freescale Semiconductor, Inc.
6
 *  Copyright 2013 SUSE LINUX Products GmbH
7
 *
8
 * This library is free software; you can redistribute it and/or
9
 * modify it under the terms of the GNU Lesser General Public
10
 * License as published by the Free Software Foundation; either
11
 * version 2 of the License, or (at your option) any later version.
12
 *
13
 * This library is distributed in the hope that it will be useful,
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16
 * Lesser General Public License for more details.
17
 *
18
 * You should have received a copy of the GNU Lesser General Public
19
 * License along with this library; if not, see <http://www.gnu.org/licenses/>.
20
 */
21

    
22
/* A lot of PowerPC definition have been included here.
23
 * Most of them are not usable for now but have been kept
24
 * inside "#if defined(TODO) ... #endif" statements to make tests easier.
25
 */
26

    
27
#include "cpu.h"
28
#include "cpu-models.h"
29

    
30
#if defined(CONFIG_USER_ONLY)
31
#define TODO_USER_ONLY 1
32
#endif
33

    
34
/***************************************************************************/
35
/* PowerPC CPU definitions                                                 */
36
#define POWERPC_DEF_PREFIX(pvr, svr, type)                                  \
37
    glue(glue(glue(glue(pvr, _), svr), _), type)
38
#define POWERPC_DEF_SVR(_name, _desc, _pvr, _svr, _type)                    \
39
    static void                                                             \
40
    glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_class_init)            \
41
    (ObjectClass *oc, void *data)                                           \
42
    {                                                                       \
43
        DeviceClass *dc = DEVICE_CLASS(oc);                                 \
44
        PowerPCCPUClass *pcc = POWERPC_CPU_CLASS(oc);                       \
45
                                                                            \
46
        pcc->pvr          = _pvr;                                           \
47
        pcc->svr          = _svr;                                           \
48
        dc->desc          = _desc;                                          \
49
    }                                                                       \
50
                                                                            \
51
    static const TypeInfo                                                   \
52
    glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_type_info) = {         \
53
        .name       = _name "-" TYPE_POWERPC_CPU,                           \
54
        .parent     = stringify(_type) "-family-" TYPE_POWERPC_CPU,         \
55
        .class_init =                                                       \
56
            glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_class_init),   \
57
    };                                                                      \
58
                                                                            \
59
    static void                                                             \
60
    glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_register_types)(void)  \
61
    {                                                                       \
62
        type_register_static(                                               \
63
            &glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_type_info));  \
64
    }                                                                       \
65
                                                                            \
66
    type_init(                                                              \
67
        glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_register_types))
68

    
69
#define POWERPC_DEF(_name, _pvr, _type, _desc)                              \
70
    POWERPC_DEF_SVR(_name, _desc, _pvr, POWERPC_SVR_NONE, _type)
71

    
72
    /* Embedded PowerPC                                                      */
73
    /* PowerPC 401 family                                                    */
74
    POWERPC_DEF("401",           CPU_POWERPC_401,                    401,
75
                "Generic PowerPC 401")
76
    /* PowerPC 401 cores                                                     */
77
    POWERPC_DEF("401A1",         CPU_POWERPC_401A1,                  401,
78
                "PowerPC 401A1")
79
    POWERPC_DEF("401B2",         CPU_POWERPC_401B2,                  401x2,
80
                "PowerPC 401B2")
81
#if defined(TODO)
82
    POWERPC_DEF("401B3",         CPU_POWERPC_401B3,                  401x3,
83
                "PowerPC 401B3")
84
#endif
85
    POWERPC_DEF("401C2",         CPU_POWERPC_401C2,                  401x2,
86
                "PowerPC 401C2")
87
    POWERPC_DEF("401D2",         CPU_POWERPC_401D2,                  401x2,
88
                "PowerPC 401D2")
89
    POWERPC_DEF("401E2",         CPU_POWERPC_401E2,                  401x2,
90
                "PowerPC 401E2")
91
    POWERPC_DEF("401F2",         CPU_POWERPC_401F2,                  401x2,
92
                "PowerPC 401F2")
93
    /* XXX: to be checked */
94
    POWERPC_DEF("401G2",         CPU_POWERPC_401G2,                  401x2,
95
                "PowerPC 401G2")
96
    /* PowerPC 401 microcontrollers                                          */
97
#if defined(TODO)
98
    POWERPC_DEF("401GF",         CPU_POWERPC_401GF,                  401,
99
                "PowerPC 401GF")
100
#endif
101
    POWERPC_DEF("IOP480",        CPU_POWERPC_IOP480,                 IOP480,
102
                "IOP480 (401 microcontroller)")
103
    POWERPC_DEF("Cobra",         CPU_POWERPC_COBRA,                  401,
104
                "IBM Processor for Network Resources")
105
#if defined(TODO)
106
    POWERPC_DEF("Xipchip",       CPU_POWERPC_XIPCHIP,                401,
107
                NULL)
108
#endif
109
    /* PowerPC 403 family                                                    */
110
    /* PowerPC 403 microcontrollers                                          */
111
    POWERPC_DEF("403GA",         CPU_POWERPC_403GA,                  403,
112
                "PowerPC 403 GA")
113
    POWERPC_DEF("403GB",         CPU_POWERPC_403GB,                  403,
114
                "PowerPC 403 GB")
115
    POWERPC_DEF("403GC",         CPU_POWERPC_403GC,                  403,
116
                "PowerPC 403 GC")
117
    POWERPC_DEF("403GCX",        CPU_POWERPC_403GCX,                 403GCX,
118
                "PowerPC 403 GCX")
119
#if defined(TODO)
120
    POWERPC_DEF("403GP",         CPU_POWERPC_403GP,                  403,
121
                "PowerPC 403 GP")
122
#endif
123
    /* PowerPC 405 family                                                    */
124
    /* PowerPC 405 cores                                                     */
125
#if defined(TODO)
126
    POWERPC_DEF("405A3",         CPU_POWERPC_405A3,                  405,
127
                "PowerPC 405 A3")
128
#endif
129
#if defined(TODO)
130
    POWERPC_DEF("405A4",         CPU_POWERPC_405A4,                  405,
131
                "PowerPC 405 A4")
132
#endif
133
#if defined(TODO)
134
    POWERPC_DEF("405B3",         CPU_POWERPC_405B3,                  405,
135
                "PowerPC 405 B3")
136
#endif
137
#if defined(TODO)
138
    POWERPC_DEF("405B4",         CPU_POWERPC_405B4,                  405,
139
                "PowerPC 405 B4")
140
#endif
141
#if defined(TODO)
142
    POWERPC_DEF("405C3",         CPU_POWERPC_405C3,                  405,
143
                "PowerPC 405 C3")
144
#endif
145
#if defined(TODO)
146
    POWERPC_DEF("405C4",         CPU_POWERPC_405C4,                  405,
147
                "PowerPC 405 C4")
148
#endif
149
    POWERPC_DEF("405D2",         CPU_POWERPC_405D2,                  405,
150
                "PowerPC 405 D2")
151
#if defined(TODO)
152
    POWERPC_DEF("405D3",         CPU_POWERPC_405D3,                  405,
153
                "PowerPC 405 D3")
154
#endif
155
    POWERPC_DEF("405D4",         CPU_POWERPC_405D4,                  405,
156
                "PowerPC 405 D4")
157
#if defined(TODO)
158
    POWERPC_DEF("405D5",         CPU_POWERPC_405D5,                  405,
159
                "PowerPC 405 D5")
160
#endif
161
#if defined(TODO)
162
    POWERPC_DEF("405E4",         CPU_POWERPC_405E4,                  405,
163
                "PowerPC 405 E4")
164
#endif
165
#if defined(TODO)
166
    POWERPC_DEF("405F4",         CPU_POWERPC_405F4,                  405,
167
                "PowerPC 405 F4")
168
#endif
169
#if defined(TODO)
170
    POWERPC_DEF("405F5",         CPU_POWERPC_405F5,                  405,
171
                "PowerPC 405 F5")
172
#endif
173
#if defined(TODO)
174
    POWERPC_DEF("405F6",         CPU_POWERPC_405F6,                  405,
175
                "PowerPC 405 F6")
176
#endif
177
    /* PowerPC 405 microcontrollers                                          */
178
    POWERPC_DEF("405CRa",        CPU_POWERPC_405CRa,                 405,
179
                "PowerPC 405 CRa")
180
    POWERPC_DEF("405CRb",        CPU_POWERPC_405CRb,                 405,
181
                "PowerPC 405 CRb")
182
    POWERPC_DEF("405CRc",        CPU_POWERPC_405CRc,                 405,
183
                "PowerPC 405 CRc")
184
    POWERPC_DEF("405EP",         CPU_POWERPC_405EP,                  405,
185
                "PowerPC 405 EP")
186
#if defined(TODO)
187
    POWERPC_DEF("405EXr",        CPU_POWERPC_405EXr,                 405,
188
                "PowerPC 405 EXr")
189
#endif
190
    POWERPC_DEF("405EZ",         CPU_POWERPC_405EZ,                  405,
191
                "PowerPC 405 EZ")
192
#if defined(TODO)
193
    POWERPC_DEF("405FX",         CPU_POWERPC_405FX,                  405,
194
                "PowerPC 405 FX")
195
#endif
196
    POWERPC_DEF("405GPa",        CPU_POWERPC_405GPa,                 405,
197
                "PowerPC 405 GPa")
198
    POWERPC_DEF("405GPb",        CPU_POWERPC_405GPb,                 405,
199
                "PowerPC 405 GPb")
200
    POWERPC_DEF("405GPc",        CPU_POWERPC_405GPc,                 405,
201
                "PowerPC 405 GPc")
202
    POWERPC_DEF("405GPd",        CPU_POWERPC_405GPd,                 405,
203
                "PowerPC 405 GPd")
204
    POWERPC_DEF("405GPR",        CPU_POWERPC_405GPR,                 405,
205
                "PowerPC 405 GPR")
206
#if defined(TODO)
207
    POWERPC_DEF("405H",          CPU_POWERPC_405H,                   405,
208
                "PowerPC 405 H")
209
#endif
210
#if defined(TODO)
211
    POWERPC_DEF("405L",          CPU_POWERPC_405L,                   405,
212
                "PowerPC 405 L")
213
#endif
214
    POWERPC_DEF("405LP",         CPU_POWERPC_405LP,                  405,
215
                "PowerPC 405 LP")
216
#if defined(TODO)
217
    POWERPC_DEF("405PM",         CPU_POWERPC_405PM,                  405,
218
                "PowerPC 405 PM")
219
#endif
220
#if defined(TODO)
221
    POWERPC_DEF("405PS",         CPU_POWERPC_405PS,                  405,
222
                "PowerPC 405 PS")
223
#endif
224
#if defined(TODO)
225
    POWERPC_DEF("405S",          CPU_POWERPC_405S,                   405,
226
                "PowerPC 405 S")
227
#endif
228
    POWERPC_DEF("Npe405H",       CPU_POWERPC_NPE405H,                405,
229
                "Npe405 H")
230
    POWERPC_DEF("Npe405H2",      CPU_POWERPC_NPE405H2,               405,
231
                "Npe405 H2")
232
    POWERPC_DEF("Npe405L",       CPU_POWERPC_NPE405L,                405,
233
                "Npe405 L")
234
    POWERPC_DEF("Npe4GS3",       CPU_POWERPC_NPE4GS3,                405,
235
                "Npe4GS3")
236
#if defined(TODO)
237
    POWERPC_DEF("Npcxx1",        CPU_POWERPC_NPCxx1,                 405,
238
                NULL)
239
#endif
240
#if defined(TODO)
241
    POWERPC_DEF("Npr161",        CPU_POWERPC_NPR161,                 405,
242
                NULL)
243
#endif
244
#if defined(TODO)
245
    POWERPC_DEF("LC77700",       CPU_POWERPC_LC77700,                405,
246
                "PowerPC LC77700 (Sanyo)")
247
#endif
248
    /* PowerPC 401/403/405 based set-top-box microcontrollers                */
249
#if defined(TODO)
250
    POWERPC_DEF("STB01000",      CPU_POWERPC_STB01000,               401x2,
251
                "STB010000")
252
#endif
253
#if defined(TODO)
254
    POWERPC_DEF("STB01010",      CPU_POWERPC_STB01010,               401x2,
255
                "STB01010")
256
#endif
257
#if defined(TODO)
258
    POWERPC_DEF("STB0210",       CPU_POWERPC_STB0210,                401x3,
259
                "STB0210")
260
#endif
261
    POWERPC_DEF("STB03",         CPU_POWERPC_STB03,                  405,
262
                "STB03xx")
263
#if defined(TODO)
264
    POWERPC_DEF("STB043",        CPU_POWERPC_STB043,                 405,
265
                "STB043x")
266
#endif
267
#if defined(TODO)
268
    POWERPC_DEF("STB045",        CPU_POWERPC_STB045,                 405,
269
                "STB045x")
270
#endif
271
    POWERPC_DEF("STB04",         CPU_POWERPC_STB04,                  405,
272
                "STB04xx")
273
    POWERPC_DEF("STB25",         CPU_POWERPC_STB25,                  405,
274
                "STB25xx")
275
#if defined(TODO)
276
    POWERPC_DEF("STB130",        CPU_POWERPC_STB130,                 405,
277
                "STB130")
278
#endif
279
    /* Xilinx PowerPC 405 cores                                              */
280
    POWERPC_DEF("x2vp4",         CPU_POWERPC_X2VP4,                  405,
281
                NULL)
282
    POWERPC_DEF("x2vp20",        CPU_POWERPC_X2VP20,                 405,
283
                NULL)
284
#if defined(TODO)
285
    POWERPC_DEF("zl10310",       CPU_POWERPC_ZL10310,                405,
286
                "Zarlink ZL10310")
287
#endif
288
#if defined(TODO)
289
    POWERPC_DEF("zl10311",       CPU_POWERPC_ZL10311,                405,
290
                "Zarlink ZL10311")
291
#endif
292
#if defined(TODO)
293
    POWERPC_DEF("zl10320",       CPU_POWERPC_ZL10320,                405,
294
                "Zarlink ZL10320")
295
#endif
296
#if defined(TODO)
297
    POWERPC_DEF("zl10321",       CPU_POWERPC_ZL10321,                405,
298
                "Zarlink ZL10321")
299
#endif
300
    /* PowerPC 440 family                                                    */
301
#if defined(TODO_USER_ONLY)
302
    POWERPC_DEF("440",           CPU_POWERPC_440,                    440GP,
303
                "Generic PowerPC 440")
304
#endif
305
    /* PowerPC 440 cores                                                     */
306
#if defined(TODO)
307
    POWERPC_DEF("440A4",         CPU_POWERPC_440A4,                  440x4,
308
                "PowerPC 440 A4")
309
#endif
310
    POWERPC_DEF("440-Xilinx",    CPU_POWERPC_440_XILINX,             440x5,
311
                "PowerPC 440 Xilinx 5")
312
#if defined(TODO)
313
    POWERPC_DEF("440A5",         CPU_POWERPC_440A5,                  440x5,
314
                "PowerPC 440 A5")
315
#endif
316
#if defined(TODO)
317
    POWERPC_DEF("440B4",         CPU_POWERPC_440B4,                  440x4,
318
                "PowerPC 440 B4")
319
#endif
320
#if defined(TODO)
321
    POWERPC_DEF("440G4",         CPU_POWERPC_440G4,                  440x4,
322
                "PowerPC 440 G4")
323
#endif
324
#if defined(TODO)
325
    POWERPC_DEF("440F5",         CPU_POWERPC_440F5,                  440x5,
326
                "PowerPC 440 F5")
327
#endif
328
#if defined(TODO)
329
    POWERPC_DEF("440G5",         CPU_POWERPC_440G5,                  440x5,
330
                "PowerPC 440 G5")
331
#endif
332
#if defined(TODO)
333
    POWERPC_DEF("440H4",         CPU_POWERPC_440H4,                  440x4,
334
                "PowerPC 440H4")
335
#endif
336
#if defined(TODO)
337
    POWERPC_DEF("440H6",         CPU_POWERPC_440H6,                  440Gx5,
338
                "PowerPC 440H6")
339
#endif
340
    /* PowerPC 440 microcontrollers                                          */
341
    POWERPC_DEF("440EPa",        CPU_POWERPC_440EPa,                 440EP,
342
                "PowerPC 440 EPa")
343
    POWERPC_DEF("440EPb",        CPU_POWERPC_440EPb,                 440EP,
344
                "PowerPC 440 EPb")
345
    POWERPC_DEF("440EPX",        CPU_POWERPC_440EPX,                 440EP,
346
                "PowerPC 440 EPX")
347
#if defined(TODO_USER_ONLY)
348
    POWERPC_DEF("440GPb",        CPU_POWERPC_440GPb,                 440GP,
349
                "PowerPC 440 GPb")
350
#endif
351
#if defined(TODO_USER_ONLY)
352
    POWERPC_DEF("440GPc",        CPU_POWERPC_440GPc,                 440GP,
353
                "PowerPC 440 GPc")
354
#endif
355
#if defined(TODO_USER_ONLY)
356
    POWERPC_DEF("440GRa",        CPU_POWERPC_440GRa,                 440x5,
357
                "PowerPC 440 GRa")
358
#endif
359
#if defined(TODO_USER_ONLY)
360
    POWERPC_DEF("440GRX",        CPU_POWERPC_440GRX,                 440x5,
361
                "PowerPC 440 GRX")
362
#endif
363
#if defined(TODO_USER_ONLY)
364
    POWERPC_DEF("440GXa",        CPU_POWERPC_440GXa,                 440EP,
365
                "PowerPC 440 GXa")
366
#endif
367
#if defined(TODO_USER_ONLY)
368
    POWERPC_DEF("440GXb",        CPU_POWERPC_440GXb,                 440EP,
369
                "PowerPC 440 GXb")
370
#endif
371
#if defined(TODO_USER_ONLY)
372
    POWERPC_DEF("440GXc",        CPU_POWERPC_440GXc,                 440EP,
373
                "PowerPC 440 GXc")
374
#endif
375
#if defined(TODO_USER_ONLY)
376
    POWERPC_DEF("440GXf",        CPU_POWERPC_440GXf,                 440EP,
377
                "PowerPC 440 GXf")
378
#endif
379
#if defined(TODO)
380
    POWERPC_DEF("440S",          CPU_POWERPC_440S,                   440,
381
                "PowerPC 440 S")
382
#endif
383
#if defined(TODO_USER_ONLY)
384
    POWERPC_DEF("440SP",         CPU_POWERPC_440SP,                  440EP,
385
                "PowerPC 440 SP")
386
#endif
387
#if defined(TODO_USER_ONLY)
388
    POWERPC_DEF("440SP2",        CPU_POWERPC_440SP2,                 440EP,
389
                "PowerPC 440 SP2")
390
#endif
391
#if defined(TODO_USER_ONLY)
392
    POWERPC_DEF("440SPE",        CPU_POWERPC_440SPE,                 440EP,
393
                "PowerPC 440 SPE")
394
#endif
395
    /* PowerPC 460 family                                                    */
396
#if defined(TODO)
397
    POWERPC_DEF("464",           CPU_POWERPC_464,                    460,
398
                "Generic PowerPC 464")
399
#endif
400
    /* PowerPC 464 microcontrollers                                          */
401
#if defined(TODO)
402
    POWERPC_DEF("464H90",        CPU_POWERPC_464H90,                 460,
403
                "PowerPC 464H90")
404
#endif
405
#if defined(TODO)
406
    POWERPC_DEF("464H90F",       CPU_POWERPC_464H90F,                460F,
407
                "PowerPC 464H90F")
408
#endif
409
    /* Freescale embedded PowerPC cores                                      */
410
    /* MPC5xx family (aka RCPU)                                              */
411
#if defined(TODO_USER_ONLY)
412
    POWERPC_DEF("MPC5xx",        CPU_POWERPC_MPC5xx,                 MPC5xx,
413
                "Generic MPC5xx core")
414
#endif
415
    /* MPC8xx family (aka PowerQUICC)                                        */
416
#if defined(TODO_USER_ONLY)
417
    POWERPC_DEF("MPC8xx",        CPU_POWERPC_MPC8xx,                 MPC8xx,
418
                "Generic MPC8xx core")
419
#endif
420
    /* MPC82xx family (aka PowerQUICC-II)                                    */
421
    POWERPC_DEF("G2",            CPU_POWERPC_G2,                     G2,
422
                "PowerPC G2 core")
423
    POWERPC_DEF("G2H4",          CPU_POWERPC_G2H4,                   G2,
424
                "PowerPC G2 H4 core")
425
    POWERPC_DEF("G2GP",          CPU_POWERPC_G2gp,                   G2,
426
                "PowerPC G2 GP core")
427
    POWERPC_DEF("G2LS",          CPU_POWERPC_G2ls,                   G2,
428
                "PowerPC G2 LS core")
429
    POWERPC_DEF("G2HiP3",        CPU_POWERPC_G2_HIP3,                G2,
430
                "PowerPC G2 HiP3 core")
431
    POWERPC_DEF("G2HiP4",        CPU_POWERPC_G2_HIP4,                G2,
432
                "PowerPC G2 HiP4 core")
433
    POWERPC_DEF("MPC603",        CPU_POWERPC_MPC603,                 603E,
434
                "PowerPC MPC603 core")
435
    POWERPC_DEF("G2le",          CPU_POWERPC_G2LE,                   G2LE,
436
        "PowerPC G2le core (same as G2 plus little-endian mode support)")
437
    POWERPC_DEF("G2leGP",        CPU_POWERPC_G2LEgp,                 G2LE,
438
                "PowerPC G2LE GP core")
439
    POWERPC_DEF("G2leLS",        CPU_POWERPC_G2LEls,                 G2LE,
440
                "PowerPC G2LE LS core")
441
    POWERPC_DEF("G2leGP1",       CPU_POWERPC_G2LEgp1,                G2LE,
442
                "PowerPC G2LE GP1 core")
443
    POWERPC_DEF("G2leGP3",       CPU_POWERPC_G2LEgp3,                G2LE,
444
                "PowerPC G2LE GP3 core")
445
    /* PowerPC G2 microcontrollers                                           */
446
#if defined(TODO)
447
    POWERPC_DEF_SVR("MPC5121", "MPC5121",
448
                    CPU_POWERPC_MPC5121,      POWERPC_SVR_5121,      G2LE)
449
#endif
450
    POWERPC_DEF_SVR("MPC5200_v10", "MPC5200 v1.0",
451
                    CPU_POWERPC_MPC5200_v10,  POWERPC_SVR_5200_v10,  G2LE)
452
    POWERPC_DEF_SVR("MPC5200_v11", "MPC5200 v1.1",
453
                    CPU_POWERPC_MPC5200_v11,  POWERPC_SVR_5200_v11,  G2LE)
454
    POWERPC_DEF_SVR("MPC5200_v12", "MPC5200 v1.2",
455
                    CPU_POWERPC_MPC5200_v12,  POWERPC_SVR_5200_v12,  G2LE)
456
    POWERPC_DEF_SVR("MPC5200B_v20", "MPC5200B v2.0",
457
                    CPU_POWERPC_MPC5200B_v20, POWERPC_SVR_5200B_v20, G2LE)
458
    POWERPC_DEF_SVR("MPC5200B_v21", "MPC5200B v2.1",
459
                    CPU_POWERPC_MPC5200B_v21, POWERPC_SVR_5200B_v21, G2LE)
460
    /* e200 family                                                           */
461
#if defined(TODO)
462
    POWERPC_DEF_SVR("MPC55xx", "Generic MPC55xx core",
463
                    CPU_POWERPC_MPC55xx,      POWERPC_SVR_55xx,      e200)
464
#endif
465
#if defined(TODO)
466
    POWERPC_DEF("e200z0",        CPU_POWERPC_e200z0,                 e200,
467
                "PowerPC e200z0 core")
468
#endif
469
#if defined(TODO)
470
    POWERPC_DEF("e200z1",        CPU_POWERPC_e200z1,                 e200,
471
                "PowerPC e200z1 core")
472
#endif
473
#if defined(TODO)
474
    POWERPC_DEF("e200z3",        CPU_POWERPC_e200z3,                 e200,
475
                "PowerPC e200z3 core")
476
#endif
477
    POWERPC_DEF("e200z5",        CPU_POWERPC_e200z5,                 e200,
478
                "PowerPC e200z5 core")
479
    POWERPC_DEF("e200z6",        CPU_POWERPC_e200z6,                 e200,
480
                "PowerPC e200z6 core")
481
    /* PowerPC e200 microcontrollers                                         */
482
#if defined(TODO)
483
    POWERPC_DEF_SVR("MPC5514E", "MPC5514E",
484
                    CPU_POWERPC_MPC5514E,     POWERPC_SVR_5514E,     e200)
485
#endif
486
#if defined(TODO)
487
    POWERPC_DEF_SVR("MPC5514E_v0", "MPC5514E v0",
488
                    CPU_POWERPC_MPC5514E_v0,  POWERPC_SVR_5514E_v0,  e200)
489
#endif
490
#if defined(TODO)
491
    POWERPC_DEF_SVR("MPC5514E_v1", "MPC5514E v1",
492
                    CPU_POWERPC_MPC5514E_v1,  POWERPC_SVR_5514E_v1,  e200)
493
#endif
494
#if defined(TODO)
495
    POWERPC_DEF_SVR("MPC5514G", "MPC5514G",
496
                    CPU_POWERPC_MPC5514G,     POWERPC_SVR_5514G,     e200)
497
#endif
498
#if defined(TODO)
499
    POWERPC_DEF_SVR("MPC5514G_v0", "MPC5514G v0",
500
                    CPU_POWERPC_MPC5514G_v0,  POWERPC_SVR_5514G_v0,  e200)
501
#endif
502
#if defined(TODO)
503
    POWERPC_DEF_SVR("MPC5514G_v1", "MPC5514G v1",
504
                    CPU_POWERPC_MPC5514G_v1,  POWERPC_SVR_5514G_v1,  e200)
505
#endif
506
#if defined(TODO)
507
    POWERPC_DEF_SVR("MPC5515S", "MPC5515S",
508
                    CPU_POWERPC_MPC5515S,     POWERPC_SVR_5515S,     e200)
509
#endif
510
#if defined(TODO)
511
    POWERPC_DEF_SVR("MPC5516E", "MPC5516E",
512
                    CPU_POWERPC_MPC5516E,     POWERPC_SVR_5516E,     e200)
513
#endif
514
#if defined(TODO)
515
    POWERPC_DEF_SVR("MPC5516E_v0", "MPC5516E v0",
516
                    CPU_POWERPC_MPC5516E_v0,  POWERPC_SVR_5516E_v0,  e200)
517
#endif
518
#if defined(TODO)
519
    POWERPC_DEF_SVR("MPC5516E_v1", "MPC5516E v1",
520
                    CPU_POWERPC_MPC5516E_v1,  POWERPC_SVR_5516E_v1,  e200)
521
#endif
522
#if defined(TODO)
523
    POWERPC_DEF_SVR("MPC5516G", "MPC5516G",
524
                    CPU_POWERPC_MPC5516G,     POWERPC_SVR_5516G,     e200)
525
#endif
526
#if defined(TODO)
527
    POWERPC_DEF_SVR("MPC5516G_v0", "MPC5516G v0",
528
                    CPU_POWERPC_MPC5516G_v0,  POWERPC_SVR_5516G_v0,  e200)
529
#endif
530
#if defined(TODO)
531
    POWERPC_DEF_SVR("MPC5516G_v1", "MPC5516G v1",
532
                    CPU_POWERPC_MPC5516G_v1,  POWERPC_SVR_5516G_v1,  e200)
533
#endif
534
#if defined(TODO)
535
    POWERPC_DEF_SVR("MPC5516S", "MPC5516S",
536
                    CPU_POWERPC_MPC5516S,     POWERPC_SVR_5516S,     e200)
537
#endif
538
#if defined(TODO)
539
    POWERPC_DEF_SVR("MPC5533", "MPC5533",
540
                    CPU_POWERPC_MPC5533,      POWERPC_SVR_5533,      e200)
541
#endif
542
#if defined(TODO)
543
    POWERPC_DEF_SVR("MPC5534", "MPC5534",
544
                    CPU_POWERPC_MPC5534,      POWERPC_SVR_5534,      e200)
545
#endif
546
#if defined(TODO)
547
    POWERPC_DEF_SVR("MPC5553", "MPC5553",
548
                    CPU_POWERPC_MPC5553,      POWERPC_SVR_5553,      e200)
549
#endif
550
#if defined(TODO)
551
    POWERPC_DEF_SVR("MPC5554", "MPC5554",
552
                    CPU_POWERPC_MPC5554,      POWERPC_SVR_5554,      e200)
553
#endif
554
#if defined(TODO)
555
    POWERPC_DEF_SVR("MPC5561", "MPC5561",
556
                    CPU_POWERPC_MPC5561,      POWERPC_SVR_5561,      e200)
557
#endif
558
#if defined(TODO)
559
    POWERPC_DEF_SVR("MPC5565", "MPC5565",
560
                    CPU_POWERPC_MPC5565,      POWERPC_SVR_5565,      e200)
561
#endif
562
#if defined(TODO)
563
    POWERPC_DEF_SVR("MPC5566", "MPC5566",
564
                    CPU_POWERPC_MPC5566,      POWERPC_SVR_5566,      e200)
565
#endif
566
#if defined(TODO)
567
    POWERPC_DEF_SVR("MPC5567", "MPC5567",
568
                    CPU_POWERPC_MPC5567,      POWERPC_SVR_5567,      e200)
569
#endif
570
    /* e300 family                                                           */
571
    POWERPC_DEF("e300c1",        CPU_POWERPC_e300c1,                 e300,
572
                "PowerPC e300c1 core")
573
    POWERPC_DEF("e300c2",        CPU_POWERPC_e300c2,                 e300,
574
                "PowerPC e300c2 core")
575
    POWERPC_DEF("e300c3",        CPU_POWERPC_e300c3,                 e300,
576
                "PowerPC e300c3 core")
577
    POWERPC_DEF("e300c4",        CPU_POWERPC_e300c4,                 e300,
578
                "PowerPC e300c4 core")
579
    /* PowerPC e300 microcontrollers                                         */
580
#if defined(TODO)
581
    POWERPC_DEF_SVR("MPC8313", "MPC8313",
582
                    CPU_POWERPC_MPC831x,      POWERPC_SVR_8313,      e300)
583
#endif
584
#if defined(TODO)
585
    POWERPC_DEF_SVR("MPC8313E", "MPC8313E",
586
                    CPU_POWERPC_MPC831x,      POWERPC_SVR_8313E,     e300)
587
#endif
588
#if defined(TODO)
589
    POWERPC_DEF_SVR("MPC8314", "MPC8314",
590
                    CPU_POWERPC_MPC831x,      POWERPC_SVR_8314,      e300)
591
#endif
592
#if defined(TODO)
593
    POWERPC_DEF_SVR("MPC8314E", "MPC8314E",
594
                    CPU_POWERPC_MPC831x,      POWERPC_SVR_8314E,     e300)
595
#endif
596
#if defined(TODO)
597
    POWERPC_DEF_SVR("MPC8315", "MPC8315",
598
                    CPU_POWERPC_MPC831x,      POWERPC_SVR_8315,      e300)
599
#endif
600
#if defined(TODO)
601
    POWERPC_DEF_SVR("MPC8315E", "MPC8315E",
602
                    CPU_POWERPC_MPC831x,      POWERPC_SVR_8315E,     e300)
603
#endif
604
#if defined(TODO)
605
    POWERPC_DEF_SVR("MPC8321", "MPC8321",
606
                    CPU_POWERPC_MPC832x,      POWERPC_SVR_8321,      e300)
607
#endif
608
#if defined(TODO)
609
    POWERPC_DEF_SVR("MPC8321E", "MPC8321E",
610
                    CPU_POWERPC_MPC832x,      POWERPC_SVR_8321E,     e300)
611
#endif
612
#if defined(TODO)
613
    POWERPC_DEF_SVR("MPC8323", "MPC8323",
614
                    CPU_POWERPC_MPC832x,      POWERPC_SVR_8323,      e300)
615
#endif
616
#if defined(TODO)
617
    POWERPC_DEF_SVR("MPC8323E", "MPC8323E",
618
                    CPU_POWERPC_MPC832x,      POWERPC_SVR_8323E,     e300)
619
#endif
620
    POWERPC_DEF_SVR("MPC8343", "MPC8343",
621
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8343,      e300)
622
    POWERPC_DEF_SVR("MPC8343A", "MPC8343A",
623
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8343A,     e300)
624
    POWERPC_DEF_SVR("MPC8343E", "MPC8343E",
625
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8343E,     e300)
626
    POWERPC_DEF_SVR("MPC8343EA", "MPC8343EA",
627
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8343EA,    e300)
628
    POWERPC_DEF_SVR("MPC8347T", "MPC8347T",
629
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8347T,     e300)
630
    POWERPC_DEF_SVR("MPC8347P", "MPC8347P",
631
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8347P,     e300)
632
    POWERPC_DEF_SVR("MPC8347AT", "MPC8347AT",
633
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8347AT,    e300)
634
    POWERPC_DEF_SVR("MPC8347AP", "MPC8347AP",
635
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8347AP,    e300)
636
    POWERPC_DEF_SVR("MPC8347ET", "MPC8347ET",
637
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8347ET,    e300)
638
    POWERPC_DEF_SVR("MPC8347EP", "MPC8343EP",
639
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8347EP,    e300)
640
    POWERPC_DEF_SVR("MPC8347EAT", "MPC8347EAT",
641
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8347EAT,   e300)
642
    POWERPC_DEF_SVR("MPC8347EAP", "MPC8343EAP",
643
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8347EAP,   e300)
644
    POWERPC_DEF_SVR("MPC8349", "MPC8349",
645
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8349,      e300)
646
    POWERPC_DEF_SVR("MPC8349A", "MPC8349A",
647
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8349A,     e300)
648
    POWERPC_DEF_SVR("MPC8349E", "MPC8349E",
649
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8349E,     e300)
650
    POWERPC_DEF_SVR("MPC8349EA", "MPC8349EA",
651
                    CPU_POWERPC_MPC834x,      POWERPC_SVR_8349EA,    e300)
652
#if defined(TODO)
653
    POWERPC_DEF_SVR("MPC8358E", "MPC8358E",
654
                    CPU_POWERPC_MPC835x,      POWERPC_SVR_8358E,     e300)
655
#endif
656
#if defined(TODO)
657
    POWERPC_DEF_SVR("MPC8360E", "MPC8360E",
658
                    CPU_POWERPC_MPC836x,      POWERPC_SVR_8360E,     e300)
659
#endif
660
    POWERPC_DEF_SVR("MPC8377", "MPC8377",
661
                    CPU_POWERPC_MPC837x,      POWERPC_SVR_8377,      e300)
662
    POWERPC_DEF_SVR("MPC8377E", "MPC8377E",
663
                    CPU_POWERPC_MPC837x,      POWERPC_SVR_8377E,     e300)
664
    POWERPC_DEF_SVR("MPC8378", "MPC8378",
665
                    CPU_POWERPC_MPC837x,      POWERPC_SVR_8378,      e300)
666
    POWERPC_DEF_SVR("MPC8378E", "MPC8378E",
667
                    CPU_POWERPC_MPC837x,      POWERPC_SVR_8378E,     e300)
668
    POWERPC_DEF_SVR("MPC8379", "MPC8379",
669
                    CPU_POWERPC_MPC837x,      POWERPC_SVR_8379,      e300)
670
    POWERPC_DEF_SVR("MPC8379E", "MPC8379E",
671
                    CPU_POWERPC_MPC837x,      POWERPC_SVR_8379E,     e300)
672
    /* e500 family                                                           */
673
    POWERPC_DEF("e500_v10",      CPU_POWERPC_e500v1_v10,             e500v1,
674
                "PowerPC e500 v1.0 core")
675
    POWERPC_DEF("e500_v20",      CPU_POWERPC_e500v1_v20,             e500v1,
676
                "PowerPC e500 v2.0 core")
677
    POWERPC_DEF("e500v2_v10",    CPU_POWERPC_e500v2_v10,             e500v2,
678
                "PowerPC e500v2 v1.0 core")
679
    POWERPC_DEF("e500v2_v20",    CPU_POWERPC_e500v2_v20,             e500v2,
680
                "PowerPC e500v2 v2.0 core")
681
    POWERPC_DEF("e500v2_v21",    CPU_POWERPC_e500v2_v21,             e500v2,
682
                "PowerPC e500v2 v2.1 core")
683
    POWERPC_DEF("e500v2_v22",    CPU_POWERPC_e500v2_v22,             e500v2,
684
                "PowerPC e500v2 v2.2 core")
685
    POWERPC_DEF("e500v2_v30",    CPU_POWERPC_e500v2_v30,             e500v2,
686
                "PowerPC e500v2 v3.0 core")
687
    POWERPC_DEF_SVR("e500mc", "e500mc",
688
                    CPU_POWERPC_e500mc,       POWERPC_SVR_E500,      e500mc)
689
#ifdef TARGET_PPC64
690
    POWERPC_DEF_SVR("e5500", "e5500",
691
                    CPU_POWERPC_e5500,        POWERPC_SVR_E500,      e5500)
692
#endif
693
    /* PowerPC e500 microcontrollers                                         */
694
    POWERPC_DEF_SVR("MPC8533_v10", "MPC8533 v1.0",
695
                    CPU_POWERPC_MPC8533_v10,  POWERPC_SVR_8533_v10,  e500v2)
696
    POWERPC_DEF_SVR("MPC8533_v11", "MPC8533 v1.1",
697
                    CPU_POWERPC_MPC8533_v11,  POWERPC_SVR_8533_v11,  e500v2)
698
    POWERPC_DEF_SVR("MPC8533E_v10", "MPC8533E v1.0",
699
                    CPU_POWERPC_MPC8533E_v10, POWERPC_SVR_8533E_v10, e500v2)
700
    POWERPC_DEF_SVR("MPC8533E_v11", "MPC8533E v1.1",
701
                    CPU_POWERPC_MPC8533E_v11, POWERPC_SVR_8533E_v11, e500v2)
702
    POWERPC_DEF_SVR("MPC8540_v10", "MPC8540 v1.0",
703
                    CPU_POWERPC_MPC8540_v10,  POWERPC_SVR_8540_v10,  e500v1)
704
    POWERPC_DEF_SVR("MPC8540_v20", "MPC8540 v2.0",
705
                    CPU_POWERPC_MPC8540_v20,  POWERPC_SVR_8540_v20,  e500v1)
706
    POWERPC_DEF_SVR("MPC8540_v21", "MPC8540 v2.1",
707
                    CPU_POWERPC_MPC8540_v21,  POWERPC_SVR_8540_v21,  e500v1)
708
    POWERPC_DEF_SVR("MPC8541_v10", "MPC8541 v1.0",
709
                    CPU_POWERPC_MPC8541_v10,  POWERPC_SVR_8541_v10,  e500v1)
710
    POWERPC_DEF_SVR("MPC8541_v11", "MPC8541 v1.1",
711
                    CPU_POWERPC_MPC8541_v11,  POWERPC_SVR_8541_v11,  e500v1)
712
    POWERPC_DEF_SVR("MPC8541E_v10", "MPC8541E v1.0",
713
                    CPU_POWERPC_MPC8541E_v10, POWERPC_SVR_8541E_v10, e500v1)
714
    POWERPC_DEF_SVR("MPC8541E_v11", "MPC8541E v1.1",
715
                    CPU_POWERPC_MPC8541E_v11, POWERPC_SVR_8541E_v11, e500v1)
716
    POWERPC_DEF_SVR("MPC8543_v10", "MPC8543 v1.0",
717
                    CPU_POWERPC_MPC8543_v10,  POWERPC_SVR_8543_v10,  e500v2)
718
    POWERPC_DEF_SVR("MPC8543_v11", "MPC8543 v1.1",
719
                    CPU_POWERPC_MPC8543_v11,  POWERPC_SVR_8543_v11,  e500v2)
720
    POWERPC_DEF_SVR("MPC8543_v20", "MPC8543 v2.0",
721
                    CPU_POWERPC_MPC8543_v20,  POWERPC_SVR_8543_v20,  e500v2)
722
    POWERPC_DEF_SVR("MPC8543_v21", "MPC8543 v2.1",
723
                    CPU_POWERPC_MPC8543_v21,  POWERPC_SVR_8543_v21,  e500v2)
724
    POWERPC_DEF_SVR("MPC8543E_v10", "MPC8543E v1.0",
725
                    CPU_POWERPC_MPC8543E_v10, POWERPC_SVR_8543E_v10, e500v2)
726
    POWERPC_DEF_SVR("MPC8543E_v11", "MPC8543E v1.1",
727
                    CPU_POWERPC_MPC8543E_v11, POWERPC_SVR_8543E_v11, e500v2)
728
    POWERPC_DEF_SVR("MPC8543E_v20", "MPC8543E v2.0",
729
                    CPU_POWERPC_MPC8543E_v20, POWERPC_SVR_8543E_v20, e500v2)
730
    POWERPC_DEF_SVR("MPC8543E_v21", "MPC8543E v2.1",
731
                    CPU_POWERPC_MPC8543E_v21, POWERPC_SVR_8543E_v21, e500v2)
732
    POWERPC_DEF_SVR("MPC8544_v10", "MPC8544 v1.0",
733
                    CPU_POWERPC_MPC8544_v10,  POWERPC_SVR_8544_v10,  e500v2)
734
    POWERPC_DEF_SVR("MPC8544_v11", "MPC8544 v1.1",
735
                    CPU_POWERPC_MPC8544_v11,  POWERPC_SVR_8544_v11,  e500v2)
736
    POWERPC_DEF_SVR("MPC8544E_v10", "MPC8544E v1.0",
737
                    CPU_POWERPC_MPC8544E_v10, POWERPC_SVR_8544E_v10, e500v2)
738
    POWERPC_DEF_SVR("MPC8544E_v11", "MPC8544E v1.1",
739
                    CPU_POWERPC_MPC8544E_v11, POWERPC_SVR_8544E_v11, e500v2)
740
    POWERPC_DEF_SVR("MPC8545_v20", "MPC8545 v2.0",
741
                    CPU_POWERPC_MPC8545_v20,  POWERPC_SVR_8545_v20,  e500v2)
742
    POWERPC_DEF_SVR("MPC8545_v21", "MPC8545 v2.1",
743
                    CPU_POWERPC_MPC8545_v21,  POWERPC_SVR_8545_v21,  e500v2)
744
    POWERPC_DEF_SVR("MPC8545E_v20", "MPC8545E v2.0",
745
                    CPU_POWERPC_MPC8545E_v20, POWERPC_SVR_8545E_v20, e500v2)
746
    POWERPC_DEF_SVR("MPC8545E_v21", "MPC8545E v2.1",
747
                    CPU_POWERPC_MPC8545E_v21, POWERPC_SVR_8545E_v21, e500v2)
748
    POWERPC_DEF_SVR("MPC8547E_v20", "MPC8547E v2.0",
749
                    CPU_POWERPC_MPC8547E_v20, POWERPC_SVR_8547E_v20, e500v2)
750
    POWERPC_DEF_SVR("MPC8547E_v21", "MPC8547E v2.1",
751
                    CPU_POWERPC_MPC8547E_v21, POWERPC_SVR_8547E_v21, e500v2)
752
    POWERPC_DEF_SVR("MPC8548_v10", "MPC8548 v1.0",
753
                    CPU_POWERPC_MPC8548_v10,  POWERPC_SVR_8548_v10,  e500v2)
754
    POWERPC_DEF_SVR("MPC8548_v11", "MPC8548 v1.1",
755
                    CPU_POWERPC_MPC8548_v11,  POWERPC_SVR_8548_v11,  e500v2)
756
    POWERPC_DEF_SVR("MPC8548_v20", "MPC8548 v2.0",
757
                    CPU_POWERPC_MPC8548_v20,  POWERPC_SVR_8548_v20,  e500v2)
758
    POWERPC_DEF_SVR("MPC8548_v21", "MPC8548 v2.1",
759
                    CPU_POWERPC_MPC8548_v21,  POWERPC_SVR_8548_v21,  e500v2)
760
    POWERPC_DEF_SVR("MPC8548E_v10", "MPC8548E v1.0",
761
                    CPU_POWERPC_MPC8548E_v10, POWERPC_SVR_8548E_v10, e500v2)
762
    POWERPC_DEF_SVR("MPC8548E_v11", "MPC8548E v1.1",
763
                    CPU_POWERPC_MPC8548E_v11, POWERPC_SVR_8548E_v11, e500v2)
764
    POWERPC_DEF_SVR("MPC8548E_v20", "MPC8548E v2.0",
765
                    CPU_POWERPC_MPC8548E_v20, POWERPC_SVR_8548E_v20, e500v2)
766
    POWERPC_DEF_SVR("MPC8548E_v21", "MPC8548E v2.1",
767
                    CPU_POWERPC_MPC8548E_v21, POWERPC_SVR_8548E_v21, e500v2)
768
    POWERPC_DEF_SVR("MPC8555_v10", "MPC8555 v1.0",
769
                    CPU_POWERPC_MPC8555_v10,  POWERPC_SVR_8555_v10,  e500v2)
770
    POWERPC_DEF_SVR("MPC8555_v11", "MPC8555 v1.1",
771
                    CPU_POWERPC_MPC8555_v11,  POWERPC_SVR_8555_v11,  e500v2)
772
    POWERPC_DEF_SVR("MPC8555E_v10", "MPC8555E v1.0",
773
                    CPU_POWERPC_MPC8555E_v10, POWERPC_SVR_8555E_v10, e500v2)
774
    POWERPC_DEF_SVR("MPC8555E_v11", "MPC8555E v1.1",
775
                    CPU_POWERPC_MPC8555E_v11, POWERPC_SVR_8555E_v11, e500v2)
776
    POWERPC_DEF_SVR("MPC8560_v10", "MPC8560 v1.0",
777
                    CPU_POWERPC_MPC8560_v10,  POWERPC_SVR_8560_v10,  e500v2)
778
    POWERPC_DEF_SVR("MPC8560_v20", "MPC8560 v2.0",
779
                    CPU_POWERPC_MPC8560_v20,  POWERPC_SVR_8560_v20,  e500v2)
780
    POWERPC_DEF_SVR("MPC8560_v21", "MPC8560 v2.1",
781
                    CPU_POWERPC_MPC8560_v21,  POWERPC_SVR_8560_v21,  e500v2)
782
    POWERPC_DEF_SVR("MPC8567", "MPC8567",
783
                    CPU_POWERPC_MPC8567,      POWERPC_SVR_8567,      e500v2)
784
    POWERPC_DEF_SVR("MPC8567E", "MPC8567E",
785
                    CPU_POWERPC_MPC8567E,     POWERPC_SVR_8567E,     e500v2)
786
    POWERPC_DEF_SVR("MPC8568", "MPC8568",
787
                    CPU_POWERPC_MPC8568,      POWERPC_SVR_8568,      e500v2)
788
    POWERPC_DEF_SVR("MPC8568E", "MPC8568E",
789
                    CPU_POWERPC_MPC8568E,     POWERPC_SVR_8568E,     e500v2)
790
    POWERPC_DEF_SVR("MPC8572", "MPC8572",
791
                    CPU_POWERPC_MPC8572,      POWERPC_SVR_8572,      e500v2)
792
    POWERPC_DEF_SVR("MPC8572E", "MPC8572E",
793
                    CPU_POWERPC_MPC8572E,     POWERPC_SVR_8572E,     e500v2)
794
    /* e600 family                                                           */
795
    POWERPC_DEF("e600",          CPU_POWERPC_e600,                   7400,
796
                "PowerPC e600 core")
797
    /* PowerPC e600 microcontrollers                                         */
798
#if defined(TODO)
799
    POWERPC_DEF_SVR("MPC8610", "MPC8610",
800
                    CPU_POWERPC_MPC8610,      POWERPC_SVR_8610,      7400)
801
#endif
802
    POWERPC_DEF_SVR("MPC8641", "MPC8641",
803
                    CPU_POWERPC_MPC8641,      POWERPC_SVR_8641,      7400)
804
    POWERPC_DEF_SVR("MPC8641D", "MPC8641D",
805
                    CPU_POWERPC_MPC8641D,     POWERPC_SVR_8641D,     7400)
806
    /* 32 bits "classic" PowerPC                                             */
807
    /* PowerPC 6xx family                                                    */
808
    POWERPC_DEF("601_v0",        CPU_POWERPC_601_v0,                 601,
809
                "PowerPC 601v0")
810
    POWERPC_DEF("601_v1",        CPU_POWERPC_601_v1,                 601,
811
                "PowerPC 601v1")
812
    POWERPC_DEF("601_v2",        CPU_POWERPC_601_v2,                 601v,
813
                "PowerPC 601v2")
814
    POWERPC_DEF("602",           CPU_POWERPC_602,                    602,
815
                "PowerPC 602")
816
    POWERPC_DEF("603",           CPU_POWERPC_603,                    603,
817
                "PowerPC 603")
818
    POWERPC_DEF("603e_v1.1",     CPU_POWERPC_603E_v11,               603E,
819
                "PowerPC 603e v1.1")
820
    POWERPC_DEF("603e_v1.2",     CPU_POWERPC_603E_v12,               603E,
821
                "PowerPC 603e v1.2")
822
    POWERPC_DEF("603e_v1.3",     CPU_POWERPC_603E_v13,               603E,
823
                "PowerPC 603e v1.3")
824
    POWERPC_DEF("603e_v1.4",     CPU_POWERPC_603E_v14,               603E,
825
                "PowerPC 603e v1.4")
826
    POWERPC_DEF("603e_v2.2",     CPU_POWERPC_603E_v22,               603E,
827
                "PowerPC 603e v2.2")
828
    POWERPC_DEF("603e_v3",       CPU_POWERPC_603E_v3,                603E,
829
                "PowerPC 603e v3")
830
    POWERPC_DEF("603e_v4",       CPU_POWERPC_603E_v4,                603E,
831
                "PowerPC 603e v4")
832
    POWERPC_DEF("603e_v4.1",     CPU_POWERPC_603E_v41,               603E,
833
                "PowerPC 603e v4.1")
834
    POWERPC_DEF("603e7",         CPU_POWERPC_603E7,                  603E,
835
                "PowerPC 603e (aka PID7)")
836
    POWERPC_DEF("603e7t",        CPU_POWERPC_603E7t,                 603E,
837
                "PowerPC 603e7t")
838
    POWERPC_DEF("603e7v",        CPU_POWERPC_603E7v,                 603E,
839
                "PowerPC 603e7v")
840
    POWERPC_DEF("603e7v1",       CPU_POWERPC_603E7v1,                603E,
841
                "PowerPC 603e7v1")
842
    POWERPC_DEF("603e7v2",       CPU_POWERPC_603E7v2,                603E,
843
                "PowerPC 603e7v2")
844
    POWERPC_DEF("603p",          CPU_POWERPC_603P,                   603E,
845
                "PowerPC 603p (aka PID7v)")
846
    POWERPC_DEF("604",           CPU_POWERPC_604,                    604,
847
                "PowerPC 604")
848
    POWERPC_DEF("604e_v1.0",     CPU_POWERPC_604E_v10,               604E,
849
                "PowerPC 604e v1.0")
850
    POWERPC_DEF("604e_v2.2",     CPU_POWERPC_604E_v22,               604E,
851
                "PowerPC 604e v2.2")
852
    POWERPC_DEF("604e_v2.4",     CPU_POWERPC_604E_v24,               604E,
853
                "PowerPC 604e v2.4")
854
    POWERPC_DEF("604r",          CPU_POWERPC_604R,                   604E,
855
                "PowerPC 604r (aka PIDA)")
856
#if defined(TODO)
857
    POWERPC_DEF("604ev",         CPU_POWERPC_604EV,                  604E,
858
                "PowerPC 604ev")
859
#endif
860
    /* PowerPC 7xx family                                                    */
861
    POWERPC_DEF("740_v1.0",      CPU_POWERPC_7x0_v10,                740,
862
                "PowerPC 740 v1.0 (G3)")
863
    POWERPC_DEF("750_v1.0",      CPU_POWERPC_7x0_v10,                750,
864
                "PowerPC 750 v1.0 (G3)")
865
    POWERPC_DEF("740_v2.0",      CPU_POWERPC_7x0_v20,                740,
866
                "PowerPC 740 v2.0 (G3)")
867
    POWERPC_DEF("750_v2.0",      CPU_POWERPC_7x0_v20,                750,
868
                "PowerPC 750 v2.0 (G3)")
869
    POWERPC_DEF("740_v2.1",      CPU_POWERPC_7x0_v21,                740,
870
                "PowerPC 740 v2.1 (G3)")
871
    POWERPC_DEF("750_v2.1",      CPU_POWERPC_7x0_v21,                750,
872
                "PowerPC 750 v2.1 (G3)")
873
    POWERPC_DEF("740_v2.2",      CPU_POWERPC_7x0_v22,                740,
874
                "PowerPC 740 v2.2 (G3)")
875
    POWERPC_DEF("750_v2.2",      CPU_POWERPC_7x0_v22,                750,
876
                "PowerPC 750 v2.2 (G3)")
877
    POWERPC_DEF("740_v3.0",      CPU_POWERPC_7x0_v30,                740,
878
                "PowerPC 740 v3.0 (G3)")
879
    POWERPC_DEF("750_v3.0",      CPU_POWERPC_7x0_v30,                750,
880
                "PowerPC 750 v3.0 (G3)")
881
    POWERPC_DEF("740_v3.1",      CPU_POWERPC_7x0_v31,                740,
882
                "PowerPC 740 v3.1 (G3)")
883
    POWERPC_DEF("750_v3.1",      CPU_POWERPC_7x0_v31,                750,
884
                "PowerPC 750 v3.1 (G3)")
885
    POWERPC_DEF("740e",          CPU_POWERPC_740E,                   740,
886
                "PowerPC 740E (G3)")
887
    POWERPC_DEF("750e",          CPU_POWERPC_750E,                   750,
888
                "PowerPC 750E (G3)")
889
    POWERPC_DEF("740p",          CPU_POWERPC_7x0P,                   740,
890
                "PowerPC 740P (G3)")
891
    POWERPC_DEF("750p",          CPU_POWERPC_7x0P,                   750,
892
                "PowerPC 750P (G3)")
893
    POWERPC_DEF("750cl_v1.0",    CPU_POWERPC_750CL_v10,              750cl,
894
                "PowerPC 750CL v1.0")
895
    POWERPC_DEF("750cl_v2.0",    CPU_POWERPC_750CL_v20,              750cl,
896
                "PowerPC 750CL v2.0")
897
    POWERPC_DEF("750cx_v1.0",    CPU_POWERPC_750CX_v10,              750cx,
898
                "PowerPC 750CX v1.0 (G3 embedded)")
899
    POWERPC_DEF("750cx_v2.0",    CPU_POWERPC_750CX_v20,              750cx,
900
                "PowerPC 750CX v2.1 (G3 embedded)")
901
    POWERPC_DEF("750cx_v2.1",    CPU_POWERPC_750CX_v21,              750cx,
902
                "PowerPC 750CX v2.1 (G3 embedded)")
903
    POWERPC_DEF("750cx_v2.2",    CPU_POWERPC_750CX_v22,              750cx,
904
                "PowerPC 750CX v2.2 (G3 embedded)")
905
    POWERPC_DEF("750cxe_v2.1",   CPU_POWERPC_750CXE_v21,             750cx,
906
                "PowerPC 750CXe v2.1 (G3 embedded)")
907
    POWERPC_DEF("750cxe_v2.2",   CPU_POWERPC_750CXE_v22,             750cx,
908
                "PowerPC 750CXe v2.2 (G3 embedded)")
909
    POWERPC_DEF("750cxe_v2.3",   CPU_POWERPC_750CXE_v23,             750cx,
910
                "PowerPC 750CXe v2.3 (G3 embedded)")
911
    POWERPC_DEF("750cxe_v2.4",   CPU_POWERPC_750CXE_v24,             750cx,
912
                "PowerPC 750CXe v2.4 (G3 embedded)")
913
    POWERPC_DEF("750cxe_v2.4b",  CPU_POWERPC_750CXE_v24b,            750cx,
914
                "PowerPC 750CXe v2.4b (G3 embedded)")
915
    POWERPC_DEF("750cxe_v3.0",   CPU_POWERPC_750CXE_v30,             750cx,
916
                "PowerPC 750CXe v3.0 (G3 embedded)")
917
    POWERPC_DEF("750cxe_v3.1",   CPU_POWERPC_750CXE_v31,             750cx,
918
                "PowerPC 750CXe v3.1 (G3 embedded)")
919
    POWERPC_DEF("750cxe_v3.1b",  CPU_POWERPC_750CXE_v31b,            750cx,
920
                "PowerPC 750CXe v3.1b (G3 embedded)")
921
    POWERPC_DEF("750cxr",        CPU_POWERPC_750CXR,                 750cx,
922
                "PowerPC 750CXr (G3 embedded)")
923
    POWERPC_DEF("750fl",         CPU_POWERPC_750FL,                  750fx,
924
                "PowerPC 750FL (G3 embedded)")
925
    POWERPC_DEF("750fx_v1.0",    CPU_POWERPC_750FX_v10,              750fx,
926
                "PowerPC 750FX v1.0 (G3 embedded)")
927
    POWERPC_DEF("750fx_v2.0",    CPU_POWERPC_750FX_v20,              750fx,
928
                "PowerPC 750FX v2.0 (G3 embedded)")
929
    POWERPC_DEF("750fx_v2.1",    CPU_POWERPC_750FX_v21,              750fx,
930
                "PowerPC 750FX v2.1 (G3 embedded)")
931
    POWERPC_DEF("750fx_v2.2",    CPU_POWERPC_750FX_v22,              750fx,
932
                "PowerPC 750FX v2.2 (G3 embedded)")
933
    POWERPC_DEF("750fx_v2.3",    CPU_POWERPC_750FX_v23,              750fx,
934
                "PowerPC 750FX v2.3 (G3 embedded)")
935
    POWERPC_DEF("750gl",         CPU_POWERPC_750GL,                  750gx,
936
                "PowerPC 750GL (G3 embedded)")
937
    POWERPC_DEF("750gx_v1.0",    CPU_POWERPC_750GX_v10,              750gx,
938
                "PowerPC 750GX v1.0 (G3 embedded)")
939
    POWERPC_DEF("750gx_v1.1",    CPU_POWERPC_750GX_v11,              750gx,
940
                "PowerPC 750GX v1.1 (G3 embedded)")
941
    POWERPC_DEF("750gx_v1.2",    CPU_POWERPC_750GX_v12,              750gx,
942
                "PowerPC 750GX v1.2 (G3 embedded)")
943
    POWERPC_DEF("750l_v2.0",     CPU_POWERPC_750L_v20,               750,
944
                "PowerPC 750L v2.0 (G3 embedded)")
945
    POWERPC_DEF("750l_v2.1",     CPU_POWERPC_750L_v21,               750,
946
                "PowerPC 750L v2.1 (G3 embedded)")
947
    POWERPC_DEF("750l_v2.2",     CPU_POWERPC_750L_v22,               750,
948
                "PowerPC 750L v2.2 (G3 embedded)")
949
    POWERPC_DEF("750l_v3.0",     CPU_POWERPC_750L_v30,               750,
950
                "PowerPC 750L v3.0 (G3 embedded)")
951
    POWERPC_DEF("750l_v3.2",     CPU_POWERPC_750L_v32,               750,
952
                "PowerPC 750L v3.2 (G3 embedded)")
953
    POWERPC_DEF("745_v1.0",      CPU_POWERPC_7x5_v10,                745,
954
                "PowerPC 745 v1.0")
955
    POWERPC_DEF("755_v1.0",      CPU_POWERPC_7x5_v10,                755,
956
                "PowerPC 755 v1.0")
957
    POWERPC_DEF("745_v1.1",      CPU_POWERPC_7x5_v11,                745,
958
                "PowerPC 745 v1.1")
959
    POWERPC_DEF("755_v1.1",      CPU_POWERPC_7x5_v11,                755,
960
                "PowerPC 755 v1.1")
961
    POWERPC_DEF("745_v2.0",      CPU_POWERPC_7x5_v20,                745,
962
                "PowerPC 745 v2.0")
963
    POWERPC_DEF("755_v2.0",      CPU_POWERPC_7x5_v20,                755,
964
                "PowerPC 755 v2.0")
965
    POWERPC_DEF("745_v2.1",      CPU_POWERPC_7x5_v21,                745,
966
                "PowerPC 745 v2.1")
967
    POWERPC_DEF("755_v2.1",      CPU_POWERPC_7x5_v21,                755,
968
                "PowerPC 755 v2.1")
969
    POWERPC_DEF("745_v2.2",      CPU_POWERPC_7x5_v22,                745,
970
                "PowerPC 745 v2.2")
971
    POWERPC_DEF("755_v2.2",      CPU_POWERPC_7x5_v22,                755,
972
                "PowerPC 755 v2.2")
973
    POWERPC_DEF("745_v2.3",      CPU_POWERPC_7x5_v23,                745,
974
                "PowerPC 745 v2.3")
975
    POWERPC_DEF("755_v2.3",      CPU_POWERPC_7x5_v23,                755,
976
                "PowerPC 755 v2.3")
977
    POWERPC_DEF("745_v2.4",      CPU_POWERPC_7x5_v24,                745,
978
                "PowerPC 745 v2.4")
979
    POWERPC_DEF("755_v2.4",      CPU_POWERPC_7x5_v24,                755,
980
                "PowerPC 755 v2.4")
981
    POWERPC_DEF("745_v2.5",      CPU_POWERPC_7x5_v25,                745,
982
                "PowerPC 745 v2.5")
983
    POWERPC_DEF("755_v2.5",      CPU_POWERPC_7x5_v25,                755,
984
                "PowerPC 755 v2.5")
985
    POWERPC_DEF("745_v2.6",      CPU_POWERPC_7x5_v26,                745,
986
                "PowerPC 745 v2.6")
987
    POWERPC_DEF("755_v2.6",      CPU_POWERPC_7x5_v26,                755,
988
                "PowerPC 755 v2.6")
989
    POWERPC_DEF("745_v2.7",      CPU_POWERPC_7x5_v27,                745,
990
                "PowerPC 745 v2.7")
991
    POWERPC_DEF("755_v2.7",      CPU_POWERPC_7x5_v27,                755,
992
                "PowerPC 755 v2.7")
993
    POWERPC_DEF("745_v2.8",      CPU_POWERPC_7x5_v28,                745,
994
                "PowerPC 745 v2.8")
995
    POWERPC_DEF("755_v2.8",      CPU_POWERPC_7x5_v28,                755,
996
                "PowerPC 755 v2.8")
997
#if defined(TODO)
998
    POWERPC_DEF("745p",          CPU_POWERPC_7x5P,                   745,
999
                "PowerPC 745P (G3)")
1000
    POWERPC_DEF("755p",          CPU_POWERPC_7x5P,                   755,
1001
                "PowerPC 755P (G3)")
1002
#endif
1003
    /* PowerPC 74xx family                                                   */
1004
    POWERPC_DEF("7400_v1.0",     CPU_POWERPC_7400_v10,               7400,
1005
                "PowerPC 7400 v1.0 (G4)")
1006
    POWERPC_DEF("7400_v1.1",     CPU_POWERPC_7400_v11,               7400,
1007
                "PowerPC 7400 v1.1 (G4)")
1008
    POWERPC_DEF("7400_v2.0",     CPU_POWERPC_7400_v20,               7400,
1009
                "PowerPC 7400 v2.0 (G4)")
1010
    POWERPC_DEF("7400_v2.1",     CPU_POWERPC_7400_v21,               7400,
1011
                "PowerPC 7400 v2.1 (G4)")
1012
    POWERPC_DEF("7400_v2.2",     CPU_POWERPC_7400_v22,               7400,
1013
                "PowerPC 7400 v2.2 (G4)")
1014
    POWERPC_DEF("7400_v2.6",     CPU_POWERPC_7400_v26,               7400,
1015
                "PowerPC 7400 v2.6 (G4)")
1016
    POWERPC_DEF("7400_v2.7",     CPU_POWERPC_7400_v27,               7400,
1017
                "PowerPC 7400 v2.7 (G4)")
1018
    POWERPC_DEF("7400_v2.8",     CPU_POWERPC_7400_v28,               7400,
1019
                "PowerPC 7400 v2.8 (G4)")
1020
    POWERPC_DEF("7400_v2.9",     CPU_POWERPC_7400_v29,               7400,
1021
                "PowerPC 7400 v2.9 (G4)")
1022
    POWERPC_DEF("7410_v1.0",     CPU_POWERPC_7410_v10,               7410,
1023
                "PowerPC 7410 v1.0 (G4)")
1024
    POWERPC_DEF("7410_v1.1",     CPU_POWERPC_7410_v11,               7410,
1025
                "PowerPC 7410 v1.1 (G4)")
1026
    POWERPC_DEF("7410_v1.2",     CPU_POWERPC_7410_v12,               7410,
1027
                "PowerPC 7410 v1.2 (G4)")
1028
    POWERPC_DEF("7410_v1.3",     CPU_POWERPC_7410_v13,               7410,
1029
                "PowerPC 7410 v1.3 (G4)")
1030
    POWERPC_DEF("7410_v1.4",     CPU_POWERPC_7410_v14,               7410,
1031
                "PowerPC 7410 v1.4 (G4)")
1032
    POWERPC_DEF("7448_v1.0",     CPU_POWERPC_7448_v10,               7400,
1033
                "PowerPC 7448 v1.0 (G4)")
1034
    POWERPC_DEF("7448_v1.1",     CPU_POWERPC_7448_v11,               7400,
1035
                "PowerPC 7448 v1.1 (G4)")
1036
    POWERPC_DEF("7448_v2.0",     CPU_POWERPC_7448_v20,               7400,
1037
                "PowerPC 7448 v2.0 (G4)")
1038
    POWERPC_DEF("7448_v2.1",     CPU_POWERPC_7448_v21,               7400,
1039
                "PowerPC 7448 v2.1 (G4)")
1040
    POWERPC_DEF("7450_v1.0",     CPU_POWERPC_7450_v10,               7450,
1041
                "PowerPC 7450 v1.0 (G4)")
1042
    POWERPC_DEF("7450_v1.1",     CPU_POWERPC_7450_v11,               7450,
1043
                "PowerPC 7450 v1.1 (G4)")
1044
    POWERPC_DEF("7450_v1.2",     CPU_POWERPC_7450_v12,               7450,
1045
                "PowerPC 7450 v1.2 (G4)")
1046
    POWERPC_DEF("7450_v2.0",     CPU_POWERPC_7450_v20,               7450,
1047
                "PowerPC 7450 v2.0 (G4)")
1048
    POWERPC_DEF("7450_v2.1",     CPU_POWERPC_7450_v21,               7450,
1049
                "PowerPC 7450 v2.1 (G4)")
1050
    POWERPC_DEF("7441_v2.1",     CPU_POWERPC_7450_v21,               7440,
1051
                "PowerPC 7441 v2.1 (G4)")
1052
    POWERPC_DEF("7441_v2.3",     CPU_POWERPC_74x1_v23,               7440,
1053
                "PowerPC 7441 v2.3 (G4)")
1054
    POWERPC_DEF("7451_v2.3",     CPU_POWERPC_74x1_v23,               7450,
1055
                "PowerPC 7451 v2.3 (G4)")
1056
    POWERPC_DEF("7441_v2.10",    CPU_POWERPC_74x1_v210,              7440,
1057
                "PowerPC 7441 v2.10 (G4)")
1058
    POWERPC_DEF("7451_v2.10",    CPU_POWERPC_74x1_v210,              7450,
1059
                "PowerPC 7451 v2.10 (G4)")
1060
    POWERPC_DEF("7445_v1.0",     CPU_POWERPC_74x5_v10,               7445,
1061
                "PowerPC 7445 v1.0 (G4)")
1062
    POWERPC_DEF("7455_v1.0",     CPU_POWERPC_74x5_v10,               7455,
1063
                "PowerPC 7455 v1.0 (G4)")
1064
    POWERPC_DEF("7445_v2.1",     CPU_POWERPC_74x5_v21,               7445,
1065
                "PowerPC 7445 v2.1 (G4)")
1066
    POWERPC_DEF("7455_v2.1",     CPU_POWERPC_74x5_v21,               7455,
1067
                "PowerPC 7455 v2.1 (G4)")
1068
    POWERPC_DEF("7445_v3.2",     CPU_POWERPC_74x5_v32,               7445,
1069
                "PowerPC 7445 v3.2 (G4)")
1070
    POWERPC_DEF("7455_v3.2",     CPU_POWERPC_74x5_v32,               7455,
1071
                "PowerPC 7455 v3.2 (G4)")
1072
    POWERPC_DEF("7445_v3.3",     CPU_POWERPC_74x5_v33,               7445,
1073
                "PowerPC 7445 v3.3 (G4)")
1074
    POWERPC_DEF("7455_v3.3",     CPU_POWERPC_74x5_v33,               7455,
1075
                "PowerPC 7455 v3.3 (G4)")
1076
    POWERPC_DEF("7445_v3.4",     CPU_POWERPC_74x5_v34,               7445,
1077
                "PowerPC 7445 v3.4 (G4)")
1078
    POWERPC_DEF("7455_v3.4",     CPU_POWERPC_74x5_v34,               7455,
1079
                "PowerPC 7455 v3.4 (G4)")
1080
    POWERPC_DEF("7447_v1.0",     CPU_POWERPC_74x7_v10,               7445,
1081
                "PowerPC 7447 v1.0 (G4)")
1082
    POWERPC_DEF("7457_v1.0",     CPU_POWERPC_74x7_v10,               7455,
1083
                "PowerPC 7457 v1.0 (G4)")
1084
    POWERPC_DEF("7447_v1.1",     CPU_POWERPC_74x7_v11,               7445,
1085
                "PowerPC 7447 v1.1 (G4)")
1086
    POWERPC_DEF("7457_v1.1",     CPU_POWERPC_74x7_v11,               7455,
1087
                "PowerPC 7457 v1.1 (G4)")
1088
    POWERPC_DEF("7457_v1.2",     CPU_POWERPC_74x7_v12,               7455,
1089
                "PowerPC 7457 v1.2 (G4)")
1090
    POWERPC_DEF("7447A_v1.0",    CPU_POWERPC_74x7A_v10,              7445,
1091
                "PowerPC 7447A v1.0 (G4)")
1092
    POWERPC_DEF("7457A_v1.0",    CPU_POWERPC_74x7A_v10,              7455,
1093
                "PowerPC 7457A v1.0 (G4)")
1094
    POWERPC_DEF("7447A_v1.1",    CPU_POWERPC_74x7A_v11,              7445,
1095
                "PowerPC 7447A v1.1 (G4)")
1096
    POWERPC_DEF("7457A_v1.1",    CPU_POWERPC_74x7A_v11,              7455,
1097
                "PowerPC 7457A v1.1 (G4)")
1098
    POWERPC_DEF("7447A_v1.2",    CPU_POWERPC_74x7A_v12,              7445,
1099
                "PowerPC 7447A v1.2 (G4)")
1100
    POWERPC_DEF("7457A_v1.2",    CPU_POWERPC_74x7A_v12,              7455,
1101
                "PowerPC 7457A v1.2 (G4)")
1102
    /* 64 bits PowerPC                                                       */
1103
#if defined (TARGET_PPC64)
1104
#if defined(TODO)
1105
    POWERPC_DEF("620",           CPU_POWERPC_620,                    620,
1106
                "PowerPC 620")
1107
    POWERPC_DEF("630",           CPU_POWERPC_630,                    630,
1108
                "PowerPC 630 (POWER3)")
1109
#endif
1110
#if defined(TODO)
1111
    POWERPC_DEF("631",           CPU_POWERPC_631,                    631,
1112
                "PowerPC 631 (Power 3+)")
1113
#endif
1114
#if defined(TODO)
1115
    POWERPC_DEF("POWER4",        CPU_POWERPC_POWER4,                 POWER4,
1116
                "POWER4")
1117
#endif
1118
#if defined(TODO)
1119
    POWERPC_DEF("POWER4+",       CPU_POWERPC_POWER4P,                POWER4P,
1120
                "POWER4p")
1121
#endif
1122
#if defined(TODO)
1123
    POWERPC_DEF("POWER5",        CPU_POWERPC_POWER5,                 POWER5,
1124
                "POWER5")
1125
    POWERPC_DEF("POWER5gr",      CPU_POWERPC_POWER5GR,               POWER5,
1126
                "POWER5GR")
1127
#endif
1128
#if defined(TODO)
1129
    POWERPC_DEF("POWER5+",       CPU_POWERPC_POWER5P,                POWER5P,
1130
                "POWER5+")
1131
    POWERPC_DEF("POWER5gs",      CPU_POWERPC_POWER5GS,               POWER5P,
1132
                "POWER5GS")
1133
#endif
1134
#if defined(TODO)
1135
    POWERPC_DEF("POWER6",        CPU_POWERPC_POWER6,                 POWER6,
1136
                "POWER6")
1137
    POWERPC_DEF("POWER6_5",      CPU_POWERPC_POWER6_5,               POWER5,
1138
                "POWER6 running in POWER5 mode")
1139
    POWERPC_DEF("POWER6A",       CPU_POWERPC_POWER6A,                POWER6,
1140
                "POWER6A")
1141
#endif
1142
    POWERPC_DEF("POWER7_v2.0",   CPU_POWERPC_POWER7_v20,             POWER7,
1143
                "POWER7 v2.0")
1144
    POWERPC_DEF("POWER7_v2.1",   CPU_POWERPC_POWER7_v21,             POWER7,
1145
                "POWER7 v2.1")
1146
    POWERPC_DEF("POWER7_v2.3",   CPU_POWERPC_POWER7_v23,             POWER7,
1147
                "POWER7 v2.3")
1148
    POWERPC_DEF("970",           CPU_POWERPC_970,                    970,
1149
                "PowerPC 970")
1150
    POWERPC_DEF("970fx_v1.0",    CPU_POWERPC_970FX_v10,              970FX,
1151
                "PowerPC 970FX v1.0 (G5)")
1152
    POWERPC_DEF("970fx_v2.0",    CPU_POWERPC_970FX_v20,              970FX,
1153
                "PowerPC 970FX v2.0 (G5)")
1154
    POWERPC_DEF("970fx_v2.1",    CPU_POWERPC_970FX_v21,              970FX,
1155
                "PowerPC 970FX v2.1 (G5)")
1156
    POWERPC_DEF("970fx_v3.0",    CPU_POWERPC_970FX_v30,              970FX,
1157
                "PowerPC 970FX v3.0 (G5)")
1158
    POWERPC_DEF("970fx_v3.1",    CPU_POWERPC_970FX_v31,              970FX,
1159
                "PowerPC 970FX v3.1 (G5)")
1160
    POWERPC_DEF("970gx",         CPU_POWERPC_970GX,                  970GX,
1161
                "PowerPC 970GX (G5)")
1162
    POWERPC_DEF("970mp_v1.0",    CPU_POWERPC_970MP_v10,              970MP,
1163
                "PowerPC 970MP v1.0")
1164
    POWERPC_DEF("970mp_v1.1",    CPU_POWERPC_970MP_v11,              970MP,
1165
                "PowerPC 970MP v1.1")
1166
#if defined(TODO)
1167
    POWERPC_DEF("Cell",          CPU_POWERPC_CELL,                   970,
1168
                "PowerPC Cell")
1169
#endif
1170
#if defined(TODO)
1171
    POWERPC_DEF("Cell_v1.0",     CPU_POWERPC_CELL_v10,               970,
1172
                "PowerPC Cell v1.0")
1173
#endif
1174
#if defined(TODO)
1175
    POWERPC_DEF("Cell_v2.0",     CPU_POWERPC_CELL_v20,               970,
1176
                "PowerPC Cell v2.0")
1177
#endif
1178
#if defined(TODO)
1179
    POWERPC_DEF("Cell_v3.0",     CPU_POWERPC_CELL_v30,               970,
1180
                "PowerPC Cell v3.0")
1181
#endif
1182
#if defined(TODO)
1183
    POWERPC_DEF("Cell_v3.1",     CPU_POWERPC_CELL_v31,               970,
1184
                "PowerPC Cell v3.1")
1185
#endif
1186
#if defined(TODO)
1187
    POWERPC_DEF("Cell_v3.2",     CPU_POWERPC_CELL_v32,               970,
1188
                "PowerPC Cell v3.2")
1189
#endif
1190
#if defined(TODO)
1191
    /* This one seems to support the whole POWER2 instruction set
1192
     * and the PowerPC 64 one.
1193
     */
1194
    /* What about A10 & A30 ? */
1195
    POWERPC_DEF("RS64",          CPU_POWERPC_RS64,                   RS64,
1196
                "RS64 (Apache/A35)")
1197
#endif
1198
#if defined(TODO)
1199
    POWERPC_DEF("RS64-II",       CPU_POWERPC_RS64II,                 RS64,
1200
                "RS64-II (NorthStar/A50)")
1201
#endif
1202
#if defined(TODO)
1203
    POWERPC_DEF("RS64-III",      CPU_POWERPC_RS64III,                RS64,
1204
                "RS64-III (Pulsar)")
1205
#endif
1206
#if defined(TODO)
1207
    POWERPC_DEF("RS64-IV",       CPU_POWERPC_RS64IV,                 RS64,
1208
                "RS64-IV (IceStar/IStar/SStar)")
1209
#endif
1210
#endif /* defined (TARGET_PPC64) */
1211
    /* POWER                                                                 */
1212
#if defined(TODO)
1213
    POWERPC_DEF("POWER",         CPU_POWERPC_POWER,                  POWER,
1214
                "Original POWER")
1215
#endif
1216
#if defined(TODO)
1217
    POWERPC_DEF("POWER2",        CPU_POWERPC_POWER2,                 POWER,
1218
                "POWER2")
1219
#endif
1220
    /* PA semi cores                                                         */
1221
#if defined(TODO)
1222
    POWERPC_DEF("PA6T",          CPU_POWERPC_PA6T,                   PA6T,
1223
                "PA PA6T")
1224
#endif
1225

    
1226

    
1227
/***************************************************************************/
1228
/* PowerPC CPU aliases                                                     */
1229

    
1230
const PowerPCCPUAlias ppc_cpu_aliases[] = {
1231
    { "403", "403GC" },
1232
    { "405", "405D4" },
1233
    { "405CR", "405CRc" },
1234
    { "405GP", "405GPd" },
1235
    { "405GPe", "405CRc" },
1236
    { "x2vp7", "x2vp4" },
1237
    { "x2vp50", "x2vp20" },
1238

    
1239
    { "440EP", "440EPb" },
1240
    { "440GP", "440GPc" },
1241
    { "440GR", "440GRa" },
1242
    { "440GX", "440GXf" },
1243

    
1244
    { "RCPU", "MPC5xx" },
1245
    /* MPC5xx microcontrollers */
1246
    { "MGT560", "MPC5xx" },
1247
    { "MPC509", "MPC5xx" },
1248
    { "MPC533", "MPC5xx" },
1249
    { "MPC534", "MPC5xx" },
1250
    { "MPC555", "MPC5xx" },
1251
    { "MPC556", "MPC5xx" },
1252
    { "MPC560", "MPC5xx" },
1253
    { "MPC561", "MPC5xx" },
1254
    { "MPC562", "MPC5xx" },
1255
    { "MPC563", "MPC5xx" },
1256
    { "MPC564", "MPC5xx" },
1257
    { "MPC565", "MPC5xx" },
1258
    { "MPC566", "MPC5xx" },
1259

    
1260
    { "PowerQUICC", "MPC8xx" },
1261
    /* MPC8xx microcontrollers */
1262
    { "MGT823", "MPC8xx" },
1263
    { "MPC821", "MPC8xx" },
1264
    { "MPC823", "MPC8xx" },
1265
    { "MPC850", "MPC8xx" },
1266
    { "MPC852T", "MPC8xx" },
1267
    { "MPC855T", "MPC8xx" },
1268
    { "MPC857", "MPC8xx" },
1269
    { "MPC859", "MPC8xx" },
1270
    { "MPC860", "MPC8xx" },
1271
    { "MPC862", "MPC8xx" },
1272
    { "MPC866", "MPC8xx" },
1273
    { "MPC870", "MPC8xx" },
1274
    { "MPC875", "MPC8xx" },
1275
    { "MPC880", "MPC8xx" },
1276
    { "MPC885", "MPC8xx" },
1277

    
1278
    /* PowerPC MPC603 microcontrollers */
1279
    { "MPC8240", "603" },
1280

    
1281
    { "MPC52xx", "MPC5200" },
1282
    { "MPC5200", "MPC5200_v12" },
1283
    { "MPC5200B", "MPC5200B_v21" },
1284

    
1285
    { "MPC82xx", "MPC8280" },
1286
    { "PowerQUICC-II", "MPC82xx" },
1287
    { "MPC8241", "G2HiP4" },
1288
    { "MPC8245", "G2HiP4" },
1289
    { "MPC8247", "G2leGP3" },
1290
    { "MPC8248", "G2leGP3" },
1291
    { "MPC8250", "MPC8250_HiP4" },
1292
    { "MPC8250_HiP3", "G2HiP3" },
1293
    { "MPC8250_HiP4", "G2HiP4" },
1294
    { "MPC8255", "MPC8255_HiP4" },
1295
    { "MPC8255_HiP3", "G2HiP3" },
1296
    { "MPC8255_HiP4", "G2HiP4" },
1297
    { "MPC8260", "MPC8260_HiP4" },
1298
    { "MPC8260_HiP3", "G2HiP3" },
1299
    { "MPC8260_HiP4", "G2HiP4" },
1300
    { "MPC8264", "MPC8264_HiP4" },
1301
    { "MPC8264_HiP3", "G2HiP3" },
1302
    { "MPC8264_HiP4", "G2HiP4" },
1303
    { "MPC8265", "MPC8265_HiP4" },
1304
    { "MPC8265_HiP3", "G2HiP3" },
1305
    { "MPC8265_HiP4", "G2HiP4" },
1306
    { "MPC8266", "MPC8266_HiP4" },
1307
    { "MPC8266_HiP3", "G2HiP3" },
1308
    { "MPC8266_HiP4", "G2HiP4" },
1309
    { "MPC8270", "G2leGP3" },
1310
    { "MPC8271", "G2leGP3" },
1311
    { "MPC8272", "G2leGP3" },
1312
    { "MPC8275", "G2leGP3" },
1313
    { "MPC8280", "G2leGP3" },
1314
    { "e200", "e200z6" },
1315
    { "e300", "e300c3" },
1316
    { "MPC8347", "MPC8347T" },
1317
    { "MPC8347A", "MPC8347AT" },
1318
    { "MPC8347E", "MPC8347ET" },
1319
    { "MPC8347EA", "MPC8347EAT" },
1320
    { "e500", "e500v2_v22" },
1321
    { "e500v1", "e500_v20" },
1322
    { "e500v2", "e500v2_v22" },
1323
    { "MPC8533", "MPC8533_v11" },
1324
    { "MPC8533E", "MPC8533E_v11" },
1325
    { "MPC8540", "MPC8540_v21" },
1326
    { "MPC8541", "MPC8541_v11" },
1327
    { "MPC8541E", "MPC8541E_v11" },
1328
    { "MPC8543", "MPC8543_v21" },
1329
    { "MPC8543E", "MPC8543E_v21" },
1330
    { "MPC8544", "MPC8544_v11" },
1331
    { "MPC8544E", "MPC8544E_v11" },
1332
    { "MPC8545", "MPC8545_v21" },
1333
    { "MPC8545E", "MPC8545E_v21" },
1334
    { "MPC8547E", "MPC8547E_v21" },
1335
    { "MPC8548", "MPC8548_v21" },
1336
    { "MPC8548E", "MPC8548E_v21" },
1337
    { "MPC8555", "MPC8555_v11" },
1338
    { "MPC8555E", "MPC8555E_v11" },
1339
    { "MPC8560", "MPC8560_v21" },
1340
    { "601",  "601_v2" },
1341
    { "601v", "601_v2" },
1342
    { "Vanilla", "603" },
1343
    { "603e", "603e_v4.1" },
1344
    { "Stretch", "603e" },
1345
    { "Vaillant", "603e7v" },
1346
    { "603r", "603e7t" },
1347
    { "Goldeneye", "603r" },
1348
    { "604e", "604e_v2.4" },
1349
    { "Sirocco", "604e" },
1350
    { "Mach5", "604r" },
1351
    { "740", "740_v3.1" },
1352
    { "Arthur", "740" },
1353
    { "750", "750_v3.1" },
1354
    { "Typhoon", "750" },
1355
    { "G3",      "750" },
1356
    { "Conan/Doyle", "750p" },
1357
    { "750cl", "750cl_v2.0" },
1358
    { "750cx", "750cx_v2.2" },
1359
    { "750cxe", "750cxe_v3.1b" },
1360
    { "750fx", "750fx_v2.3" },
1361
    { "750gx", "750gx_v1.2" },
1362
    { "750l", "750l_v3.2" },
1363
    { "LoneStar", "750l" },
1364
    { "745", "745_v2.8" },
1365
    { "755", "755_v2.8" },
1366
    { "Goldfinger", "755" },
1367
    { "7400", "7400_v2.9" },
1368
    { "Max", "7400" },
1369
    { "G4",  "7400" },
1370
    { "7410", "7410_v1.4" },
1371
    { "Nitro", "7410" },
1372
    { "7448", "7448_v2.1" },
1373
    { "7450", "7450_v2.1" },
1374
    { "Vger", "7450" },
1375
    { "7441", "7441_v2.3" },
1376
    { "7451", "7451_v2.3" },
1377
    { "7445", "7445_v3.2" },
1378
    { "7455", "7455_v3.2" },
1379
    { "Apollo6", "7455" },
1380
    { "7447", "7447_v1.2" },
1381
    { "7457", "7457_v1.2" },
1382
    { "Apollo7", "7457" },
1383
    { "7447A", "7447A_v1.2" },
1384
    { "7457A", "7457A_v1.2" },
1385
    { "Apollo7PM", "7457A_v1.0" },
1386
#if defined(TARGET_PPC64)
1387
    { "Trident", "620" },
1388
    { "POWER3", "630" },
1389
    { "Boxer", "POWER3" },
1390
    { "Dino",  "POWER3" },
1391
    { "POWER3+", "631" },
1392
    { "POWER7", "POWER7_v2.3" },
1393
    { "970fx", "970fx_v3.1" },
1394
    { "970mp", "970mp_v1.1" },
1395
    { "Apache", "RS64" },
1396
    { "A35",    "RS64" },
1397
    { "NorthStar", "RS64-II" },
1398
    { "A50",       "RS64-II" },
1399
    { "Pulsar", "RS64-III" },
1400
    { "IceStar", "RS64-IV" },
1401
    { "IStar",   "RS64-IV" },
1402
    { "SStar",   "RS64-IV" },
1403
#endif
1404
    { "RIOS",    "POWER" },
1405
    { "RSC",     "POWER" },
1406
    { "RSC3308", "POWER" },
1407
    { "RSC4608", "POWER" },
1408
    { "RSC2", "POWER2" },
1409
    { "P2SC", "POWER2" },
1410

    
1411
    /* Generic PowerPCs */
1412
#if defined(TARGET_PPC64)
1413
    { "ppc64", "970fx" },
1414
#endif
1415
    { "ppc32", "604" },
1416
    { "ppc", "ppc32" },
1417
    { "default", "ppc" },
1418
    { NULL, NULL }
1419
};