xref: /openbmc/qemu/target/ppc/cpu-models.c (revision f6476697)
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.1 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 #include "qemu/osdep.h"
23 #include "cpu.h"
24 #include "qemu/module.h"
25 #include "cpu-models.h"
26 
27 #if defined(CONFIG_USER_ONLY)
28 #define TODO_USER_ONLY 1
29 #endif
30 
31 /***************************************************************************/
32 /* PowerPC CPU definitions                                                 */
33 #define POWERPC_DEF_PREFIX(pvr, svr, type)                                  \
34     glue(glue(glue(glue(pvr, _), svr), _), type)
35 #define POWERPC_DEF_SVR(_name, _desc, _pvr, _svr, _type)                    \
36     static void                                                             \
37     glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_class_init)            \
38     (ObjectClass *oc, void *data)                                           \
39     {                                                                       \
40         DeviceClass *dc = DEVICE_CLASS(oc);                                 \
41         PowerPCCPUClass *pcc = POWERPC_CPU_CLASS(oc);                       \
42                                                                             \
43         pcc->pvr          = _pvr;                                           \
44         pcc->svr          = _svr;                                           \
45         dc->desc          = _desc;                                          \
46     }                                                                       \
47                                                                             \
48     static const TypeInfo                                                   \
49     glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_type_info) = {         \
50         .name       = POWERPC_CPU_TYPE_NAME(_name),                           \
51         .parent     = stringify(_type) "-family-" TYPE_POWERPC_CPU,         \
52         .class_init =                                                       \
53             glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_class_init),   \
54     };                                                                      \
55                                                                             \
56     static void                                                             \
57     glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_register_types)(void)  \
58     {                                                                       \
59         type_register_static(                                               \
60             &glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_type_info));  \
61     }                                                                       \
62                                                                             \
63     type_init(                                                              \
64         glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_register_types))
65 
66 #define POWERPC_DEF(_name, _pvr, _type, _desc)                              \
67     POWERPC_DEF_SVR(_name, _desc, _pvr, POWERPC_SVR_NONE, _type)
68 
69     /* Embedded PowerPC                                                      */
70     /* PowerPC 401 family                                                    */
71     POWERPC_DEF("401",           CPU_POWERPC_401,                    401,
72                 "Generic PowerPC 401")
73     /* PowerPC 401 cores                                                     */
74     POWERPC_DEF("401a1",         CPU_POWERPC_401A1,                  401,
75                 "PowerPC 401A1")
76     POWERPC_DEF("401b2",         CPU_POWERPC_401B2,                  401x2,
77                 "PowerPC 401B2")
78     POWERPC_DEF("401c2",         CPU_POWERPC_401C2,                  401x2,
79                 "PowerPC 401C2")
80     POWERPC_DEF("401d2",         CPU_POWERPC_401D2,                  401x2,
81                 "PowerPC 401D2")
82     POWERPC_DEF("401e2",         CPU_POWERPC_401E2,                  401x2,
83                 "PowerPC 401E2")
84     POWERPC_DEF("401f2",         CPU_POWERPC_401F2,                  401x2,
85                 "PowerPC 401F2")
86     /* XXX: to be checked */
87     POWERPC_DEF("401g2",         CPU_POWERPC_401G2,                  401x2,
88                 "PowerPC 401G2")
89     /* PowerPC 401 microcontrollers                                          */
90     POWERPC_DEF("iop480",        CPU_POWERPC_IOP480,                 IOP480,
91                 "IOP480 (401 microcontroller)")
92     POWERPC_DEF("cobra",         CPU_POWERPC_COBRA,                  401,
93                 "IBM Processor for Network Resources")
94     /* PowerPC 403 family                                                    */
95     /* PowerPC 403 microcontrollers                                          */
96     POWERPC_DEF("403ga",         CPU_POWERPC_403GA,                  403,
97                 "PowerPC 403 GA")
98     POWERPC_DEF("403gb",         CPU_POWERPC_403GB,                  403,
99                 "PowerPC 403 GB")
100     POWERPC_DEF("403gc",         CPU_POWERPC_403GC,                  403,
101                 "PowerPC 403 GC")
102     POWERPC_DEF("403gcx",        CPU_POWERPC_403GCX,                 403GCX,
103                 "PowerPC 403 GCX")
104     /* PowerPC 405 family                                                    */
105     /* PowerPC 405 cores                                                     */
106     POWERPC_DEF("405d2",         CPU_POWERPC_405D2,                  405,
107                 "PowerPC 405 D2")
108     POWERPC_DEF("405d4",         CPU_POWERPC_405D4,                  405,
109                 "PowerPC 405 D4")
110     /* PowerPC 405 microcontrollers                                          */
111     POWERPC_DEF("405cra",        CPU_POWERPC_405CRa,                 405,
112                 "PowerPC 405 CRa")
113     POWERPC_DEF("405crb",        CPU_POWERPC_405CRb,                 405,
114                 "PowerPC 405 CRb")
115     POWERPC_DEF("405crc",        CPU_POWERPC_405CRc,                 405,
116                 "PowerPC 405 CRc")
117     POWERPC_DEF("405ep",         CPU_POWERPC_405EP,                  405,
118                 "PowerPC 405 EP")
119     POWERPC_DEF("405ez",         CPU_POWERPC_405EZ,                  405,
120                 "PowerPC 405 EZ")
121     POWERPC_DEF("405gpa",        CPU_POWERPC_405GPa,                 405,
122                 "PowerPC 405 GPa")
123     POWERPC_DEF("405gpb",        CPU_POWERPC_405GPb,                 405,
124                 "PowerPC 405 GPb")
125     POWERPC_DEF("405gpc",        CPU_POWERPC_405GPc,                 405,
126                 "PowerPC 405 GPc")
127     POWERPC_DEF("405gpd",        CPU_POWERPC_405GPd,                 405,
128                 "PowerPC 405 GPd")
129     POWERPC_DEF("405gpr",        CPU_POWERPC_405GPR,                 405,
130                 "PowerPC 405 GPR")
131     POWERPC_DEF("405lp",         CPU_POWERPC_405LP,                  405,
132                 "PowerPC 405 LP")
133     POWERPC_DEF("npe405h",       CPU_POWERPC_NPE405H,                405,
134                 "Npe405 H")
135     POWERPC_DEF("npe405h2",      CPU_POWERPC_NPE405H2,               405,
136                 "Npe405 H2")
137     POWERPC_DEF("npe405l",       CPU_POWERPC_NPE405L,                405,
138                 "Npe405 L")
139     POWERPC_DEF("npe4gs3",       CPU_POWERPC_NPE4GS3,                405,
140                 "Npe4GS3")
141     /* PowerPC 401/403/405 based set-top-box microcontrollers                */
142     POWERPC_DEF("stb03",         CPU_POWERPC_STB03,                  405,
143                 "STB03xx")
144     POWERPC_DEF("stb04",         CPU_POWERPC_STB04,                  405,
145                 "STB04xx")
146     POWERPC_DEF("stb25",         CPU_POWERPC_STB25,                  405,
147                 "STB25xx")
148     /* Xilinx PowerPC 405 cores                                              */
149     POWERPC_DEF("x2vp4",         CPU_POWERPC_X2VP4,                  405,
150                 NULL)
151     POWERPC_DEF("x2vp20",        CPU_POWERPC_X2VP20,                 405,
152                 NULL)
153     /* PowerPC 440 family                                                    */
154 #if defined(TODO_USER_ONLY)
155     POWERPC_DEF("440",           CPU_POWERPC_440,                    440GP,
156                 "Generic PowerPC 440")
157 #endif
158     /* PowerPC 440 cores                                                     */
159     POWERPC_DEF("440-xilinx",    CPU_POWERPC_440_XILINX,             440x5,
160                 "PowerPC 440 Xilinx 5")
161 
162     POWERPC_DEF("440-xilinx-w-dfpu",    CPU_POWERPC_440_XILINX, 440x5wDFPU,
163                 "PowerPC 440 Xilinx 5 With a Double Prec. FPU")
164     /* PowerPC 440 microcontrollers                                          */
165     POWERPC_DEF("440epa",        CPU_POWERPC_440EPa,                 440EP,
166                 "PowerPC 440 EPa")
167     POWERPC_DEF("440epb",        CPU_POWERPC_440EPb,                 440EP,
168                 "PowerPC 440 EPb")
169     POWERPC_DEF("440epx",        CPU_POWERPC_440EPX,                 440EP,
170                 "PowerPC 440 EPX")
171     POWERPC_DEF("460exb",        CPU_POWERPC_460EXb,                 460EX,
172                 "PowerPC 460 EXb")
173 #if defined(TODO_USER_ONLY)
174     POWERPC_DEF("440gpb",        CPU_POWERPC_440GPb,                 440GP,
175                 "PowerPC 440 GPb")
176 #endif
177 #if defined(TODO_USER_ONLY)
178     POWERPC_DEF("440gpc",        CPU_POWERPC_440GPc,                 440GP,
179                 "PowerPC 440 GPc")
180 #endif
181 #if defined(TODO_USER_ONLY)
182     POWERPC_DEF("440gra",        CPU_POWERPC_440GRa,                 440x5,
183                 "PowerPC 440 GRa")
184 #endif
185 #if defined(TODO_USER_ONLY)
186     POWERPC_DEF("440grx",        CPU_POWERPC_440GRX,                 440x5,
187                 "PowerPC 440 GRX")
188 #endif
189 #if defined(TODO_USER_ONLY)
190     POWERPC_DEF("440gxa",        CPU_POWERPC_440GXa,                 440EP,
191                 "PowerPC 440 GXa")
192 #endif
193 #if defined(TODO_USER_ONLY)
194     POWERPC_DEF("440gxb",        CPU_POWERPC_440GXb,                 440EP,
195                 "PowerPC 440 GXb")
196 #endif
197 #if defined(TODO_USER_ONLY)
198     POWERPC_DEF("440gxc",        CPU_POWERPC_440GXc,                 440EP,
199                 "PowerPC 440 GXc")
200 #endif
201 #if defined(TODO_USER_ONLY)
202     POWERPC_DEF("440gxf",        CPU_POWERPC_440GXf,                 440EP,
203                 "PowerPC 440 GXf")
204 #endif
205 #if defined(TODO_USER_ONLY)
206     POWERPC_DEF("440sp",         CPU_POWERPC_440SP,                  440EP,
207                 "PowerPC 440 SP")
208 #endif
209 #if defined(TODO_USER_ONLY)
210     POWERPC_DEF("440sp2",        CPU_POWERPC_440SP2,                 440EP,
211                 "PowerPC 440 SP2")
212 #endif
213 #if defined(TODO_USER_ONLY)
214     POWERPC_DEF("440spe",        CPU_POWERPC_440SPE,                 440EP,
215                 "PowerPC 440 SPE")
216 #endif
217     /* Freescale embedded PowerPC cores                                      */
218     /* MPC5xx family (aka RCPU)                                              */
219 #if defined(TODO_USER_ONLY)
220     POWERPC_DEF("mpc5xx",        CPU_POWERPC_MPC5xx,                 MPC5xx,
221                 "Generic MPC5xx core")
222 #endif
223     /* MPC8xx family (aka PowerQUICC)                                        */
224 #if defined(TODO_USER_ONLY)
225     POWERPC_DEF("mpc8xx",        CPU_POWERPC_MPC8xx,                 MPC8xx,
226                 "Generic MPC8xx core")
227 #endif
228     /* MPC82xx family (aka PowerQUICC-II)                                    */
229     POWERPC_DEF("g2",            CPU_POWERPC_G2,                     G2,
230                 "PowerPC G2 core")
231     POWERPC_DEF("g2h4",          CPU_POWERPC_G2H4,                   G2,
232                 "PowerPC G2 H4 core")
233     POWERPC_DEF("g2gp",          CPU_POWERPC_G2gp,                   G2,
234                 "PowerPC G2 GP core")
235     POWERPC_DEF("g2ls",          CPU_POWERPC_G2ls,                   G2,
236                 "PowerPC G2 LS core")
237     POWERPC_DEF("g2hip3",        CPU_POWERPC_G2_HIP3,                G2,
238                 "PowerPC G2 HiP3 core")
239     POWERPC_DEF("g2hip4",        CPU_POWERPC_G2_HIP4,                G2,
240                 "PowerPC G2 HiP4 core")
241     POWERPC_DEF("mpc603",        CPU_POWERPC_MPC603,                 603E,
242                 "PowerPC MPC603 core")
243     POWERPC_DEF("g2le",          CPU_POWERPC_G2LE,                   G2LE,
244         "PowerPC G2le core (same as G2 plus little-endian mode support)")
245     POWERPC_DEF("g2legp",        CPU_POWERPC_G2LEgp,                 G2LE,
246                 "PowerPC G2LE GP core")
247     POWERPC_DEF("g2lels",        CPU_POWERPC_G2LEls,                 G2LE,
248                 "PowerPC G2LE LS core")
249     POWERPC_DEF("g2legp1",       CPU_POWERPC_G2LEgp1,                G2LE,
250                 "PowerPC G2LE GP1 core")
251     POWERPC_DEF("g2legp3",       CPU_POWERPC_G2LEgp3,                G2LE,
252                 "PowerPC G2LE GP3 core")
253     /* PowerPC G2 microcontrollers                                           */
254     POWERPC_DEF_SVR("mpc5200_v10", "MPC5200 v1.0",
255                     CPU_POWERPC_MPC5200_v10,  POWERPC_SVR_5200_v10,  G2LE)
256     POWERPC_DEF_SVR("mpc5200_v11", "MPC5200 v1.1",
257                     CPU_POWERPC_MPC5200_v11,  POWERPC_SVR_5200_v11,  G2LE)
258     POWERPC_DEF_SVR("mpc5200_v12", "MPC5200 v1.2",
259                     CPU_POWERPC_MPC5200_v12,  POWERPC_SVR_5200_v12,  G2LE)
260     POWERPC_DEF_SVR("mpc5200b_v20", "MPC5200B v2.0",
261                     CPU_POWERPC_MPC5200B_v20, POWERPC_SVR_5200B_v20, G2LE)
262     POWERPC_DEF_SVR("mpc5200b_v21", "MPC5200B v2.1",
263                     CPU_POWERPC_MPC5200B_v21, POWERPC_SVR_5200B_v21, G2LE)
264     /* e200 family                                                           */
265     POWERPC_DEF("e200z5",        CPU_POWERPC_e200z5,                 e200,
266                 "PowerPC e200z5 core")
267     POWERPC_DEF("e200z6",        CPU_POWERPC_e200z6,                 e200,
268                 "PowerPC e200z6 core")
269     /* e300 family                                                           */
270     POWERPC_DEF("e300c1",        CPU_POWERPC_e300c1,                 e300,
271                 "PowerPC e300c1 core")
272     POWERPC_DEF("e300c2",        CPU_POWERPC_e300c2,                 e300,
273                 "PowerPC e300c2 core")
274     POWERPC_DEF("e300c3",        CPU_POWERPC_e300c3,                 e300,
275                 "PowerPC e300c3 core")
276     POWERPC_DEF("e300c4",        CPU_POWERPC_e300c4,                 e300,
277                 "PowerPC e300c4 core")
278     /* PowerPC e300 microcontrollers                                         */
279     POWERPC_DEF_SVR("mpc8343", "MPC8343",
280                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8343,      e300)
281     POWERPC_DEF_SVR("mpc8343a", "MPC8343A",
282                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8343A,     e300)
283     POWERPC_DEF_SVR("mpc8343e", "MPC8343E",
284                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8343E,     e300)
285     POWERPC_DEF_SVR("mpc8343ea", "MPC8343EA",
286                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8343EA,    e300)
287     POWERPC_DEF_SVR("mpc8347t", "MPC8347T",
288                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8347T,     e300)
289     POWERPC_DEF_SVR("mpc8347p", "MPC8347P",
290                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8347P,     e300)
291     POWERPC_DEF_SVR("mpc8347at", "MPC8347AT",
292                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8347AT,    e300)
293     POWERPC_DEF_SVR("mpc8347ap", "MPC8347AP",
294                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8347AP,    e300)
295     POWERPC_DEF_SVR("mpc8347et", "MPC8347ET",
296                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8347ET,    e300)
297     POWERPC_DEF_SVR("mpc8347ep", "MPC8343EP",
298                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8347EP,    e300)
299     POWERPC_DEF_SVR("mpc8347eat", "MPC8347EAT",
300                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8347EAT,   e300)
301     POWERPC_DEF_SVR("mpc8347eap", "MPC8343EAP",
302                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8347EAP,   e300)
303     POWERPC_DEF_SVR("mpc8349", "MPC8349",
304                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8349,      e300)
305     POWERPC_DEF_SVR("mpc8349a", "MPC8349A",
306                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8349A,     e300)
307     POWERPC_DEF_SVR("mpc8349e", "MPC8349E",
308                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8349E,     e300)
309     POWERPC_DEF_SVR("mpc8349ea", "MPC8349EA",
310                     CPU_POWERPC_MPC834x,      POWERPC_SVR_8349EA,    e300)
311     POWERPC_DEF_SVR("mpc8377", "MPC8377",
312                     CPU_POWERPC_MPC837x,      POWERPC_SVR_8377,      e300)
313     POWERPC_DEF_SVR("mpc8377e", "MPC8377E",
314                     CPU_POWERPC_MPC837x,      POWERPC_SVR_8377E,     e300)
315     POWERPC_DEF_SVR("mpc8378", "MPC8378",
316                     CPU_POWERPC_MPC837x,      POWERPC_SVR_8378,      e300)
317     POWERPC_DEF_SVR("mpc8378e", "MPC8378E",
318                     CPU_POWERPC_MPC837x,      POWERPC_SVR_8378E,     e300)
319     POWERPC_DEF_SVR("mpc8379", "MPC8379",
320                     CPU_POWERPC_MPC837x,      POWERPC_SVR_8379,      e300)
321     POWERPC_DEF_SVR("mpc8379e", "MPC8379E",
322                     CPU_POWERPC_MPC837x,      POWERPC_SVR_8379E,     e300)
323     /* e500 family                                                           */
324     POWERPC_DEF_SVR("e500_v10", "PowerPC e500 v1.0 core",
325                     CPU_POWERPC_e500v1_v10,   POWERPC_SVR_E500,      e500v1);
326     POWERPC_DEF_SVR("e500_v20", "PowerPC e500 v2.0 core",
327                     CPU_POWERPC_e500v1_v20,   POWERPC_SVR_E500,      e500v1);
328     POWERPC_DEF_SVR("e500v2_v10", "PowerPC e500v2 v1.0 core",
329                     CPU_POWERPC_e500v2_v10,   POWERPC_SVR_E500,      e500v2);
330     POWERPC_DEF_SVR("e500v2_v20", "PowerPC e500v2 v2.0 core",
331                     CPU_POWERPC_e500v2_v20,   POWERPC_SVR_E500,      e500v2);
332     POWERPC_DEF_SVR("e500v2_v21", "PowerPC e500v2 v2.1 core",
333                     CPU_POWERPC_e500v2_v21,   POWERPC_SVR_E500,      e500v2);
334     POWERPC_DEF_SVR("e500v2_v22", "PowerPC e500v2 v2.2 core",
335                     CPU_POWERPC_e500v2_v22,   POWERPC_SVR_E500,      e500v2);
336     POWERPC_DEF_SVR("e500v2_v30", "PowerPC e500v2 v3.0 core",
337                     CPU_POWERPC_e500v2_v30,   POWERPC_SVR_E500,      e500v2);
338     POWERPC_DEF_SVR("e500mc", "e500mc",
339                     CPU_POWERPC_e500mc,       POWERPC_SVR_E500,      e500mc)
340 #ifdef TARGET_PPC64
341     POWERPC_DEF_SVR("e5500", "e5500",
342                     CPU_POWERPC_e5500,        POWERPC_SVR_E500,      e5500)
343     POWERPC_DEF_SVR("e6500", "e6500",
344                     CPU_POWERPC_e6500,        POWERPC_SVR_E500,      e6500)
345 #endif
346     /* PowerPC e500 microcontrollers                                         */
347     POWERPC_DEF_SVR("mpc8533_v10", "MPC8533 v1.0",
348                     CPU_POWERPC_MPC8533_v10,  POWERPC_SVR_8533_v10,  e500v2)
349     POWERPC_DEF_SVR("mpc8533_v11", "MPC8533 v1.1",
350                     CPU_POWERPC_MPC8533_v11,  POWERPC_SVR_8533_v11,  e500v2)
351     POWERPC_DEF_SVR("mpc8533e_v10", "MPC8533E v1.0",
352                     CPU_POWERPC_MPC8533E_v10, POWERPC_SVR_8533E_v10, e500v2)
353     POWERPC_DEF_SVR("mpc8533e_v11", "MPC8533E v1.1",
354                     CPU_POWERPC_MPC8533E_v11, POWERPC_SVR_8533E_v11, e500v2)
355     POWERPC_DEF_SVR("mpc8540_v10", "MPC8540 v1.0",
356                     CPU_POWERPC_MPC8540_v10,  POWERPC_SVR_8540_v10,  e500v1)
357     POWERPC_DEF_SVR("mpc8540_v20", "MPC8540 v2.0",
358                     CPU_POWERPC_MPC8540_v20,  POWERPC_SVR_8540_v20,  e500v1)
359     POWERPC_DEF_SVR("mpc8540_v21", "MPC8540 v2.1",
360                     CPU_POWERPC_MPC8540_v21,  POWERPC_SVR_8540_v21,  e500v1)
361     POWERPC_DEF_SVR("mpc8541_v10", "MPC8541 v1.0",
362                     CPU_POWERPC_MPC8541_v10,  POWERPC_SVR_8541_v10,  e500v1)
363     POWERPC_DEF_SVR("mpc8541_v11", "MPC8541 v1.1",
364                     CPU_POWERPC_MPC8541_v11,  POWERPC_SVR_8541_v11,  e500v1)
365     POWERPC_DEF_SVR("mpc8541e_v10", "MPC8541E v1.0",
366                     CPU_POWERPC_MPC8541E_v10, POWERPC_SVR_8541E_v10, e500v1)
367     POWERPC_DEF_SVR("mpc8541e_v11", "MPC8541E v1.1",
368                     CPU_POWERPC_MPC8541E_v11, POWERPC_SVR_8541E_v11, e500v1)
369     POWERPC_DEF_SVR("mpc8543_v10", "MPC8543 v1.0",
370                     CPU_POWERPC_MPC8543_v10,  POWERPC_SVR_8543_v10,  e500v2)
371     POWERPC_DEF_SVR("mpc8543_v11", "MPC8543 v1.1",
372                     CPU_POWERPC_MPC8543_v11,  POWERPC_SVR_8543_v11,  e500v2)
373     POWERPC_DEF_SVR("mpc8543_v20", "MPC8543 v2.0",
374                     CPU_POWERPC_MPC8543_v20,  POWERPC_SVR_8543_v20,  e500v2)
375     POWERPC_DEF_SVR("mpc8543_v21", "MPC8543 v2.1",
376                     CPU_POWERPC_MPC8543_v21,  POWERPC_SVR_8543_v21,  e500v2)
377     POWERPC_DEF_SVR("mpc8543e_v10", "MPC8543E v1.0",
378                     CPU_POWERPC_MPC8543E_v10, POWERPC_SVR_8543E_v10, e500v2)
379     POWERPC_DEF_SVR("mpc8543e_v11", "MPC8543E v1.1",
380                     CPU_POWERPC_MPC8543E_v11, POWERPC_SVR_8543E_v11, e500v2)
381     POWERPC_DEF_SVR("mpc8543e_v20", "MPC8543E v2.0",
382                     CPU_POWERPC_MPC8543E_v20, POWERPC_SVR_8543E_v20, e500v2)
383     POWERPC_DEF_SVR("mpc8543e_v21", "MPC8543E v2.1",
384                     CPU_POWERPC_MPC8543E_v21, POWERPC_SVR_8543E_v21, e500v2)
385     POWERPC_DEF_SVR("mpc8544_v10", "MPC8544 v1.0",
386                     CPU_POWERPC_MPC8544_v10,  POWERPC_SVR_8544_v10,  e500v2)
387     POWERPC_DEF_SVR("mpc8544_v11", "MPC8544 v1.1",
388                     CPU_POWERPC_MPC8544_v11,  POWERPC_SVR_8544_v11,  e500v2)
389     POWERPC_DEF_SVR("mpc8544e_v10", "MPC8544E v1.0",
390                     CPU_POWERPC_MPC8544E_v10, POWERPC_SVR_8544E_v10, e500v2)
391     POWERPC_DEF_SVR("mpc8544e_v11", "MPC8544E v1.1",
392                     CPU_POWERPC_MPC8544E_v11, POWERPC_SVR_8544E_v11, e500v2)
393     POWERPC_DEF_SVR("mpc8545_v20", "MPC8545 v2.0",
394                     CPU_POWERPC_MPC8545_v20,  POWERPC_SVR_8545_v20,  e500v2)
395     POWERPC_DEF_SVR("mpc8545_v21", "MPC8545 v2.1",
396                     CPU_POWERPC_MPC8545_v21,  POWERPC_SVR_8545_v21,  e500v2)
397     POWERPC_DEF_SVR("mpc8545e_v20", "MPC8545E v2.0",
398                     CPU_POWERPC_MPC8545E_v20, POWERPC_SVR_8545E_v20, e500v2)
399     POWERPC_DEF_SVR("mpc8545e_v21", "MPC8545E v2.1",
400                     CPU_POWERPC_MPC8545E_v21, POWERPC_SVR_8545E_v21, e500v2)
401     POWERPC_DEF_SVR("mpc8547e_v20", "MPC8547E v2.0",
402                     CPU_POWERPC_MPC8547E_v20, POWERPC_SVR_8547E_v20, e500v2)
403     POWERPC_DEF_SVR("mpc8547e_v21", "MPC8547E v2.1",
404                     CPU_POWERPC_MPC8547E_v21, POWERPC_SVR_8547E_v21, e500v2)
405     POWERPC_DEF_SVR("mpc8548_v10", "MPC8548 v1.0",
406                     CPU_POWERPC_MPC8548_v10,  POWERPC_SVR_8548_v10,  e500v2)
407     POWERPC_DEF_SVR("mpc8548_v11", "MPC8548 v1.1",
408                     CPU_POWERPC_MPC8548_v11,  POWERPC_SVR_8548_v11,  e500v2)
409     POWERPC_DEF_SVR("mpc8548_v20", "MPC8548 v2.0",
410                     CPU_POWERPC_MPC8548_v20,  POWERPC_SVR_8548_v20,  e500v2)
411     POWERPC_DEF_SVR("mpc8548_v21", "MPC8548 v2.1",
412                     CPU_POWERPC_MPC8548_v21,  POWERPC_SVR_8548_v21,  e500v2)
413     POWERPC_DEF_SVR("mpc8548e_v10", "MPC8548E v1.0",
414                     CPU_POWERPC_MPC8548E_v10, POWERPC_SVR_8548E_v10, e500v2)
415     POWERPC_DEF_SVR("mpc8548e_v11", "MPC8548E v1.1",
416                     CPU_POWERPC_MPC8548E_v11, POWERPC_SVR_8548E_v11, e500v2)
417     POWERPC_DEF_SVR("mpc8548e_v20", "MPC8548E v2.0",
418                     CPU_POWERPC_MPC8548E_v20, POWERPC_SVR_8548E_v20, e500v2)
419     POWERPC_DEF_SVR("mpc8548e_v21", "MPC8548E v2.1",
420                     CPU_POWERPC_MPC8548E_v21, POWERPC_SVR_8548E_v21, e500v2)
421     POWERPC_DEF_SVR("mpc8555_v10", "MPC8555 v1.0",
422                     CPU_POWERPC_MPC8555_v10,  POWERPC_SVR_8555_v10,  e500v2)
423     POWERPC_DEF_SVR("mpc8555_v11", "MPC8555 v1.1",
424                     CPU_POWERPC_MPC8555_v11,  POWERPC_SVR_8555_v11,  e500v2)
425     POWERPC_DEF_SVR("mpc8555e_v10", "MPC8555E v1.0",
426                     CPU_POWERPC_MPC8555E_v10, POWERPC_SVR_8555E_v10, e500v2)
427     POWERPC_DEF_SVR("mpc8555e_v11", "MPC8555E v1.1",
428                     CPU_POWERPC_MPC8555E_v11, POWERPC_SVR_8555E_v11, e500v2)
429     POWERPC_DEF_SVR("mpc8560_v10", "MPC8560 v1.0",
430                     CPU_POWERPC_MPC8560_v10,  POWERPC_SVR_8560_v10,  e500v2)
431     POWERPC_DEF_SVR("mpc8560_v20", "MPC8560 v2.0",
432                     CPU_POWERPC_MPC8560_v20,  POWERPC_SVR_8560_v20,  e500v2)
433     POWERPC_DEF_SVR("mpc8560_v21", "MPC8560 v2.1",
434                     CPU_POWERPC_MPC8560_v21,  POWERPC_SVR_8560_v21,  e500v2)
435     POWERPC_DEF_SVR("mpc8567", "MPC8567",
436                     CPU_POWERPC_MPC8567,      POWERPC_SVR_8567,      e500v2)
437     POWERPC_DEF_SVR("mpc8567e", "MPC8567E",
438                     CPU_POWERPC_MPC8567E,     POWERPC_SVR_8567E,     e500v2)
439     POWERPC_DEF_SVR("mpc8568", "MPC8568",
440                     CPU_POWERPC_MPC8568,      POWERPC_SVR_8568,      e500v2)
441     POWERPC_DEF_SVR("mpc8568e", "MPC8568E",
442                     CPU_POWERPC_MPC8568E,     POWERPC_SVR_8568E,     e500v2)
443     POWERPC_DEF_SVR("mpc8572", "MPC8572",
444                     CPU_POWERPC_MPC8572,      POWERPC_SVR_8572,      e500v2)
445     POWERPC_DEF_SVR("mpc8572e", "MPC8572E",
446                     CPU_POWERPC_MPC8572E,     POWERPC_SVR_8572E,     e500v2)
447     /* e600 family                                                           */
448     POWERPC_DEF("e600",          CPU_POWERPC_e600,                   e600,
449                 "PowerPC e600 core")
450     /* PowerPC e600 microcontrollers                                         */
451     POWERPC_DEF_SVR("mpc8610", "MPC8610",
452                     CPU_POWERPC_MPC8610,      POWERPC_SVR_8610,      e600)
453     POWERPC_DEF_SVR("mpc8641", "MPC8641",
454                     CPU_POWERPC_MPC8641,      POWERPC_SVR_8641,      e600)
455     POWERPC_DEF_SVR("mpc8641d", "MPC8641D",
456                     CPU_POWERPC_MPC8641D,     POWERPC_SVR_8641D,     e600)
457     /* 32 bits "classic" PowerPC                                             */
458     /* PowerPC 6xx family                                                    */
459     POWERPC_DEF("601_v0",        CPU_POWERPC_601_v0,                 601,
460                 "PowerPC 601v0")
461     POWERPC_DEF("601_v1",        CPU_POWERPC_601_v1,                 601,
462                 "PowerPC 601v1")
463     POWERPC_DEF("601_v2",        CPU_POWERPC_601_v2,                 601v,
464                 "PowerPC 601v2")
465     POWERPC_DEF("602",           CPU_POWERPC_602,                    602,
466                 "PowerPC 602")
467     POWERPC_DEF("603",           CPU_POWERPC_603,                    603,
468                 "PowerPC 603")
469     POWERPC_DEF("603e_v1.1",     CPU_POWERPC_603E_v11,               603E,
470                 "PowerPC 603e v1.1")
471     POWERPC_DEF("603e_v1.2",     CPU_POWERPC_603E_v12,               603E,
472                 "PowerPC 603e v1.2")
473     POWERPC_DEF("603e_v1.3",     CPU_POWERPC_603E_v13,               603E,
474                 "PowerPC 603e v1.3")
475     POWERPC_DEF("603e_v1.4",     CPU_POWERPC_603E_v14,               603E,
476                 "PowerPC 603e v1.4")
477     POWERPC_DEF("603e_v2.2",     CPU_POWERPC_603E_v22,               603E,
478                 "PowerPC 603e v2.2")
479     POWERPC_DEF("603e_v3",       CPU_POWERPC_603E_v3,                603E,
480                 "PowerPC 603e v3")
481     POWERPC_DEF("603e_v4",       CPU_POWERPC_603E_v4,                603E,
482                 "PowerPC 603e v4")
483     POWERPC_DEF("603e_v4.1",     CPU_POWERPC_603E_v41,               603E,
484                 "PowerPC 603e v4.1")
485     POWERPC_DEF("603e7",         CPU_POWERPC_603E7,                  603E,
486                 "PowerPC 603e (aka PID7)")
487     POWERPC_DEF("603e7t",        CPU_POWERPC_603E7t,                 603E,
488                 "PowerPC 603e7t")
489     POWERPC_DEF("603e7v",        CPU_POWERPC_603E7v,                 603E,
490                 "PowerPC 603e7v")
491     POWERPC_DEF("603e7v1",       CPU_POWERPC_603E7v1,                603E,
492                 "PowerPC 603e7v1")
493     POWERPC_DEF("603e7v2",       CPU_POWERPC_603E7v2,                603E,
494                 "PowerPC 603e7v2")
495     POWERPC_DEF("603p",          CPU_POWERPC_603P,                   603E,
496                 "PowerPC 603p (aka PID7v)")
497     POWERPC_DEF("604",           CPU_POWERPC_604,                    604,
498                 "PowerPC 604")
499     POWERPC_DEF("604e_v1.0",     CPU_POWERPC_604E_v10,               604E,
500                 "PowerPC 604e v1.0")
501     POWERPC_DEF("604e_v2.2",     CPU_POWERPC_604E_v22,               604E,
502                 "PowerPC 604e v2.2")
503     POWERPC_DEF("604e_v2.4",     CPU_POWERPC_604E_v24,               604E,
504                 "PowerPC 604e v2.4")
505     POWERPC_DEF("604r",          CPU_POWERPC_604R,                   604E,
506                 "PowerPC 604r (aka PIDA)")
507     /* PowerPC 7xx family                                                    */
508     POWERPC_DEF("740_v1.0",      CPU_POWERPC_7x0_v10,                740,
509                 "PowerPC 740 v1.0 (G3)")
510     POWERPC_DEF("750_v1.0",      CPU_POWERPC_7x0_v10,                750,
511                 "PowerPC 750 v1.0 (G3)")
512     POWERPC_DEF("740_v2.0",      CPU_POWERPC_7x0_v20,                740,
513                 "PowerPC 740 v2.0 (G3)")
514     POWERPC_DEF("750_v2.0",      CPU_POWERPC_7x0_v20,                750,
515                 "PowerPC 750 v2.0 (G3)")
516     POWERPC_DEF("740_v2.1",      CPU_POWERPC_7x0_v21,                740,
517                 "PowerPC 740 v2.1 (G3)")
518     POWERPC_DEF("750_v2.1",      CPU_POWERPC_7x0_v21,                750,
519                 "PowerPC 750 v2.1 (G3)")
520     POWERPC_DEF("740_v2.2",      CPU_POWERPC_7x0_v22,                740,
521                 "PowerPC 740 v2.2 (G3)")
522     POWERPC_DEF("750_v2.2",      CPU_POWERPC_7x0_v22,                750,
523                 "PowerPC 750 v2.2 (G3)")
524     POWERPC_DEF("740_v3.0",      CPU_POWERPC_7x0_v30,                740,
525                 "PowerPC 740 v3.0 (G3)")
526     POWERPC_DEF("750_v3.0",      CPU_POWERPC_7x0_v30,                750,
527                 "PowerPC 750 v3.0 (G3)")
528     POWERPC_DEF("740_v3.1",      CPU_POWERPC_7x0_v31,                740,
529                 "PowerPC 740 v3.1 (G3)")
530     POWERPC_DEF("750_v3.1",      CPU_POWERPC_7x0_v31,                750,
531                 "PowerPC 750 v3.1 (G3)")
532     POWERPC_DEF("740e",          CPU_POWERPC_740E,                   740,
533                 "PowerPC 740E (G3)")
534     POWERPC_DEF("750e",          CPU_POWERPC_750E,                   750,
535                 "PowerPC 750E (G3)")
536     POWERPC_DEF("740p",          CPU_POWERPC_7x0P,                   740,
537                 "PowerPC 740P (G3)")
538     POWERPC_DEF("750p",          CPU_POWERPC_7x0P,                   750,
539                 "PowerPC 750P (G3)")
540     POWERPC_DEF("750cl_v1.0",    CPU_POWERPC_750CL_v10,              750cl,
541                 "PowerPC 750CL v1.0")
542     POWERPC_DEF("750cl_v2.0",    CPU_POWERPC_750CL_v20,              750cl,
543                 "PowerPC 750CL v2.0")
544     POWERPC_DEF("750cx_v1.0",    CPU_POWERPC_750CX_v10,              750cx,
545                 "PowerPC 750CX v1.0 (G3 embedded)")
546     POWERPC_DEF("750cx_v2.0",    CPU_POWERPC_750CX_v20,              750cx,
547                 "PowerPC 750CX v2.1 (G3 embedded)")
548     POWERPC_DEF("750cx_v2.1",    CPU_POWERPC_750CX_v21,              750cx,
549                 "PowerPC 750CX v2.1 (G3 embedded)")
550     POWERPC_DEF("750cx_v2.2",    CPU_POWERPC_750CX_v22,              750cx,
551                 "PowerPC 750CX v2.2 (G3 embedded)")
552     POWERPC_DEF("750cxe_v2.1",   CPU_POWERPC_750CXE_v21,             750cx,
553                 "PowerPC 750CXe v2.1 (G3 embedded)")
554     POWERPC_DEF("750cxe_v2.2",   CPU_POWERPC_750CXE_v22,             750cx,
555                 "PowerPC 750CXe v2.2 (G3 embedded)")
556     POWERPC_DEF("750cxe_v2.3",   CPU_POWERPC_750CXE_v23,             750cx,
557                 "PowerPC 750CXe v2.3 (G3 embedded)")
558     POWERPC_DEF("750cxe_v2.4",   CPU_POWERPC_750CXE_v24,             750cx,
559                 "PowerPC 750CXe v2.4 (G3 embedded)")
560     POWERPC_DEF("750cxe_v2.4b",  CPU_POWERPC_750CXE_v24b,            750cx,
561                 "PowerPC 750CXe v2.4b (G3 embedded)")
562     POWERPC_DEF("750cxe_v3.0",   CPU_POWERPC_750CXE_v30,             750cx,
563                 "PowerPC 750CXe v3.0 (G3 embedded)")
564     POWERPC_DEF("750cxe_v3.1",   CPU_POWERPC_750CXE_v31,             750cx,
565                 "PowerPC 750CXe v3.1 (G3 embedded)")
566     POWERPC_DEF("750cxe_v3.1b",  CPU_POWERPC_750CXE_v31b,            750cx,
567                 "PowerPC 750CXe v3.1b (G3 embedded)")
568     POWERPC_DEF("750cxr",        CPU_POWERPC_750CXR,                 750cx,
569                 "PowerPC 750CXr (G3 embedded)")
570     POWERPC_DEF("750fl",         CPU_POWERPC_750FL,                  750fx,
571                 "PowerPC 750FL (G3 embedded)")
572     POWERPC_DEF("750fx_v1.0",    CPU_POWERPC_750FX_v10,              750fx,
573                 "PowerPC 750FX v1.0 (G3 embedded)")
574     POWERPC_DEF("750fx_v2.0",    CPU_POWERPC_750FX_v20,              750fx,
575                 "PowerPC 750FX v2.0 (G3 embedded)")
576     POWERPC_DEF("750fx_v2.1",    CPU_POWERPC_750FX_v21,              750fx,
577                 "PowerPC 750FX v2.1 (G3 embedded)")
578     POWERPC_DEF("750fx_v2.2",    CPU_POWERPC_750FX_v22,              750fx,
579                 "PowerPC 750FX v2.2 (G3 embedded)")
580     POWERPC_DEF("750fx_v2.3",    CPU_POWERPC_750FX_v23,              750fx,
581                 "PowerPC 750FX v2.3 (G3 embedded)")
582     POWERPC_DEF("750gl",         CPU_POWERPC_750GL,                  750gx,
583                 "PowerPC 750GL (G3 embedded)")
584     POWERPC_DEF("750gx_v1.0",    CPU_POWERPC_750GX_v10,              750gx,
585                 "PowerPC 750GX v1.0 (G3 embedded)")
586     POWERPC_DEF("750gx_v1.1",    CPU_POWERPC_750GX_v11,              750gx,
587                 "PowerPC 750GX v1.1 (G3 embedded)")
588     POWERPC_DEF("750gx_v1.2",    CPU_POWERPC_750GX_v12,              750gx,
589                 "PowerPC 750GX v1.2 (G3 embedded)")
590     POWERPC_DEF("750l_v2.0",     CPU_POWERPC_750L_v20,               750,
591                 "PowerPC 750L v2.0 (G3 embedded)")
592     POWERPC_DEF("750l_v2.1",     CPU_POWERPC_750L_v21,               750,
593                 "PowerPC 750L v2.1 (G3 embedded)")
594     POWERPC_DEF("750l_v2.2",     CPU_POWERPC_750L_v22,               750,
595                 "PowerPC 750L v2.2 (G3 embedded)")
596     POWERPC_DEF("750l_v3.0",     CPU_POWERPC_750L_v30,               750,
597                 "PowerPC 750L v3.0 (G3 embedded)")
598     POWERPC_DEF("750l_v3.2",     CPU_POWERPC_750L_v32,               750,
599                 "PowerPC 750L v3.2 (G3 embedded)")
600     POWERPC_DEF("745_v1.0",      CPU_POWERPC_7x5_v10,                745,
601                 "PowerPC 745 v1.0")
602     POWERPC_DEF("755_v1.0",      CPU_POWERPC_7x5_v10,                755,
603                 "PowerPC 755 v1.0")
604     POWERPC_DEF("745_v1.1",      CPU_POWERPC_7x5_v11,                745,
605                 "PowerPC 745 v1.1")
606     POWERPC_DEF("755_v1.1",      CPU_POWERPC_7x5_v11,                755,
607                 "PowerPC 755 v1.1")
608     POWERPC_DEF("745_v2.0",      CPU_POWERPC_7x5_v20,                745,
609                 "PowerPC 745 v2.0")
610     POWERPC_DEF("755_v2.0",      CPU_POWERPC_7x5_v20,                755,
611                 "PowerPC 755 v2.0")
612     POWERPC_DEF("745_v2.1",      CPU_POWERPC_7x5_v21,                745,
613                 "PowerPC 745 v2.1")
614     POWERPC_DEF("755_v2.1",      CPU_POWERPC_7x5_v21,                755,
615                 "PowerPC 755 v2.1")
616     POWERPC_DEF("745_v2.2",      CPU_POWERPC_7x5_v22,                745,
617                 "PowerPC 745 v2.2")
618     POWERPC_DEF("755_v2.2",      CPU_POWERPC_7x5_v22,                755,
619                 "PowerPC 755 v2.2")
620     POWERPC_DEF("745_v2.3",      CPU_POWERPC_7x5_v23,                745,
621                 "PowerPC 745 v2.3")
622     POWERPC_DEF("755_v2.3",      CPU_POWERPC_7x5_v23,                755,
623                 "PowerPC 755 v2.3")
624     POWERPC_DEF("745_v2.4",      CPU_POWERPC_7x5_v24,                745,
625                 "PowerPC 745 v2.4")
626     POWERPC_DEF("755_v2.4",      CPU_POWERPC_7x5_v24,                755,
627                 "PowerPC 755 v2.4")
628     POWERPC_DEF("745_v2.5",      CPU_POWERPC_7x5_v25,                745,
629                 "PowerPC 745 v2.5")
630     POWERPC_DEF("755_v2.5",      CPU_POWERPC_7x5_v25,                755,
631                 "PowerPC 755 v2.5")
632     POWERPC_DEF("745_v2.6",      CPU_POWERPC_7x5_v26,                745,
633                 "PowerPC 745 v2.6")
634     POWERPC_DEF("755_v2.6",      CPU_POWERPC_7x5_v26,                755,
635                 "PowerPC 755 v2.6")
636     POWERPC_DEF("745_v2.7",      CPU_POWERPC_7x5_v27,                745,
637                 "PowerPC 745 v2.7")
638     POWERPC_DEF("755_v2.7",      CPU_POWERPC_7x5_v27,                755,
639                 "PowerPC 755 v2.7")
640     POWERPC_DEF("745_v2.8",      CPU_POWERPC_7x5_v28,                745,
641                 "PowerPC 745 v2.8")
642     POWERPC_DEF("755_v2.8",      CPU_POWERPC_7x5_v28,                755,
643                 "PowerPC 755 v2.8")
644     /* PowerPC 74xx family                                                   */
645     POWERPC_DEF("7400_v1.0",     CPU_POWERPC_7400_v10,               7400,
646                 "PowerPC 7400 v1.0 (G4)")
647     POWERPC_DEF("7400_v1.1",     CPU_POWERPC_7400_v11,               7400,
648                 "PowerPC 7400 v1.1 (G4)")
649     POWERPC_DEF("7400_v2.0",     CPU_POWERPC_7400_v20,               7400,
650                 "PowerPC 7400 v2.0 (G4)")
651     POWERPC_DEF("7400_v2.1",     CPU_POWERPC_7400_v21,               7400,
652                 "PowerPC 7400 v2.1 (G4)")
653     POWERPC_DEF("7400_v2.2",     CPU_POWERPC_7400_v22,               7400,
654                 "PowerPC 7400 v2.2 (G4)")
655     POWERPC_DEF("7400_v2.6",     CPU_POWERPC_7400_v26,               7400,
656                 "PowerPC 7400 v2.6 (G4)")
657     POWERPC_DEF("7400_v2.7",     CPU_POWERPC_7400_v27,               7400,
658                 "PowerPC 7400 v2.7 (G4)")
659     POWERPC_DEF("7400_v2.8",     CPU_POWERPC_7400_v28,               7400,
660                 "PowerPC 7400 v2.8 (G4)")
661     POWERPC_DEF("7400_v2.9",     CPU_POWERPC_7400_v29,               7400,
662                 "PowerPC 7400 v2.9 (G4)")
663     POWERPC_DEF("7410_v1.0",     CPU_POWERPC_7410_v10,               7410,
664                 "PowerPC 7410 v1.0 (G4)")
665     POWERPC_DEF("7410_v1.1",     CPU_POWERPC_7410_v11,               7410,
666                 "PowerPC 7410 v1.1 (G4)")
667     POWERPC_DEF("7410_v1.2",     CPU_POWERPC_7410_v12,               7410,
668                 "PowerPC 7410 v1.2 (G4)")
669     POWERPC_DEF("7410_v1.3",     CPU_POWERPC_7410_v13,               7410,
670                 "PowerPC 7410 v1.3 (G4)")
671     POWERPC_DEF("7410_v1.4",     CPU_POWERPC_7410_v14,               7410,
672                 "PowerPC 7410 v1.4 (G4)")
673     POWERPC_DEF("7448_v1.0",     CPU_POWERPC_7448_v10,               7400,
674                 "PowerPC 7448 v1.0 (G4)")
675     POWERPC_DEF("7448_v1.1",     CPU_POWERPC_7448_v11,               7400,
676                 "PowerPC 7448 v1.1 (G4)")
677     POWERPC_DEF("7448_v2.0",     CPU_POWERPC_7448_v20,               7400,
678                 "PowerPC 7448 v2.0 (G4)")
679     POWERPC_DEF("7448_v2.1",     CPU_POWERPC_7448_v21,               7400,
680                 "PowerPC 7448 v2.1 (G4)")
681     POWERPC_DEF("7450_v1.0",     CPU_POWERPC_7450_v10,               7450,
682                 "PowerPC 7450 v1.0 (G4)")
683     POWERPC_DEF("7450_v1.1",     CPU_POWERPC_7450_v11,               7450,
684                 "PowerPC 7450 v1.1 (G4)")
685     POWERPC_DEF("7450_v1.2",     CPU_POWERPC_7450_v12,               7450,
686                 "PowerPC 7450 v1.2 (G4)")
687     POWERPC_DEF("7450_v2.0",     CPU_POWERPC_7450_v20,               7450,
688                 "PowerPC 7450 v2.0 (G4)")
689     POWERPC_DEF("7450_v2.1",     CPU_POWERPC_7450_v21,               7450,
690                 "PowerPC 7450 v2.1 (G4)")
691     POWERPC_DEF("7441_v2.1",     CPU_POWERPC_7450_v21,               7440,
692                 "PowerPC 7441 v2.1 (G4)")
693     POWERPC_DEF("7441_v2.3",     CPU_POWERPC_74x1_v23,               7440,
694                 "PowerPC 7441 v2.3 (G4)")
695     POWERPC_DEF("7451_v2.3",     CPU_POWERPC_74x1_v23,               7450,
696                 "PowerPC 7451 v2.3 (G4)")
697     POWERPC_DEF("7441_v2.10",    CPU_POWERPC_74x1_v210,              7440,
698                 "PowerPC 7441 v2.10 (G4)")
699     POWERPC_DEF("7451_v2.10",    CPU_POWERPC_74x1_v210,              7450,
700                 "PowerPC 7451 v2.10 (G4)")
701     POWERPC_DEF("7445_v1.0",     CPU_POWERPC_74x5_v10,               7445,
702                 "PowerPC 7445 v1.0 (G4)")
703     POWERPC_DEF("7455_v1.0",     CPU_POWERPC_74x5_v10,               7455,
704                 "PowerPC 7455 v1.0 (G4)")
705     POWERPC_DEF("7445_v2.1",     CPU_POWERPC_74x5_v21,               7445,
706                 "PowerPC 7445 v2.1 (G4)")
707     POWERPC_DEF("7455_v2.1",     CPU_POWERPC_74x5_v21,               7455,
708                 "PowerPC 7455 v2.1 (G4)")
709     POWERPC_DEF("7445_v3.2",     CPU_POWERPC_74x5_v32,               7445,
710                 "PowerPC 7445 v3.2 (G4)")
711     POWERPC_DEF("7455_v3.2",     CPU_POWERPC_74x5_v32,               7455,
712                 "PowerPC 7455 v3.2 (G4)")
713     POWERPC_DEF("7445_v3.3",     CPU_POWERPC_74x5_v33,               7445,
714                 "PowerPC 7445 v3.3 (G4)")
715     POWERPC_DEF("7455_v3.3",     CPU_POWERPC_74x5_v33,               7455,
716                 "PowerPC 7455 v3.3 (G4)")
717     POWERPC_DEF("7445_v3.4",     CPU_POWERPC_74x5_v34,               7445,
718                 "PowerPC 7445 v3.4 (G4)")
719     POWERPC_DEF("7455_v3.4",     CPU_POWERPC_74x5_v34,               7455,
720                 "PowerPC 7455 v3.4 (G4)")
721     POWERPC_DEF("7447_v1.0",     CPU_POWERPC_74x7_v10,               7445,
722                 "PowerPC 7447 v1.0 (G4)")
723     POWERPC_DEF("7457_v1.0",     CPU_POWERPC_74x7_v10,               7455,
724                 "PowerPC 7457 v1.0 (G4)")
725     POWERPC_DEF("7447_v1.1",     CPU_POWERPC_74x7_v11,               7445,
726                 "PowerPC 7447 v1.1 (G4)")
727     POWERPC_DEF("7457_v1.1",     CPU_POWERPC_74x7_v11,               7455,
728                 "PowerPC 7457 v1.1 (G4)")
729     POWERPC_DEF("7457_v1.2",     CPU_POWERPC_74x7_v12,               7455,
730                 "PowerPC 7457 v1.2 (G4)")
731     POWERPC_DEF("7447a_v1.0",    CPU_POWERPC_74x7A_v10,              7445,
732                 "PowerPC 7447A v1.0 (G4)")
733     POWERPC_DEF("7457a_v1.0",    CPU_POWERPC_74x7A_v10,              7455,
734                 "PowerPC 7457A v1.0 (G4)")
735     POWERPC_DEF("7447a_v1.1",    CPU_POWERPC_74x7A_v11,              7445,
736                 "PowerPC 7447A v1.1 (G4)")
737     POWERPC_DEF("7457a_v1.1",    CPU_POWERPC_74x7A_v11,              7455,
738                 "PowerPC 7457A v1.1 (G4)")
739     POWERPC_DEF("7447a_v1.2",    CPU_POWERPC_74x7A_v12,              7445,
740                 "PowerPC 7447A v1.2 (G4)")
741     POWERPC_DEF("7457a_v1.2",    CPU_POWERPC_74x7A_v12,              7455,
742                 "PowerPC 7457A v1.2 (G4)")
743     /* 64 bits PowerPC                                                       */
744 #if defined(TARGET_PPC64)
745     POWERPC_DEF("970_v2.2",      CPU_POWERPC_970_v22,                970,
746                 "PowerPC 970 v2.2")
747     POWERPC_DEF("970fx_v1.0",    CPU_POWERPC_970FX_v10,              970,
748                 "PowerPC 970FX v1.0 (G5)")
749     POWERPC_DEF("970fx_v2.0",    CPU_POWERPC_970FX_v20,              970,
750                 "PowerPC 970FX v2.0 (G5)")
751     POWERPC_DEF("970fx_v2.1",    CPU_POWERPC_970FX_v21,              970,
752                 "PowerPC 970FX v2.1 (G5)")
753     POWERPC_DEF("970fx_v3.0",    CPU_POWERPC_970FX_v30,              970,
754                 "PowerPC 970FX v3.0 (G5)")
755     POWERPC_DEF("970fx_v3.1",    CPU_POWERPC_970FX_v31,              970,
756                 "PowerPC 970FX v3.1 (G5)")
757     POWERPC_DEF("970mp_v1.0",    CPU_POWERPC_970MP_v10,              970,
758                 "PowerPC 970MP v1.0")
759     POWERPC_DEF("970mp_v1.1",    CPU_POWERPC_970MP_v11,              970,
760                 "PowerPC 970MP v1.1")
761     POWERPC_DEF("power5+_v2.1",  CPU_POWERPC_POWER5P_v21,            POWER5P,
762                 "POWER5+ v2.1")
763     POWERPC_DEF("power7_v2.3",   CPU_POWERPC_POWER7_v23,             POWER7,
764                 "POWER7 v2.3")
765     POWERPC_DEF("power7+_v2.1",  CPU_POWERPC_POWER7P_v21,            POWER7,
766                 "POWER7+ v2.1")
767     POWERPC_DEF("power8e_v2.1",  CPU_POWERPC_POWER8E_v21,            POWER8,
768                 "POWER8E v2.1")
769     POWERPC_DEF("power8_v2.0",   CPU_POWERPC_POWER8_v20,             POWER8,
770                 "POWER8 v2.0")
771     POWERPC_DEF("power8nvl_v1.0", CPU_POWERPC_POWER8NVL_v10,         POWER8,
772                 "POWER8NVL v1.0")
773     POWERPC_DEF("power9_v1.0",   CPU_POWERPC_POWER9_DD1,             POWER9,
774                 "POWER9 v1.0")
775     POWERPC_DEF("power9_v2.0",   CPU_POWERPC_POWER9_DD20,            POWER9,
776                 "POWER9 v2.0")
777     POWERPC_DEF("power10_v1.0",  CPU_POWERPC_POWER10_DD1,            POWER10,
778                 "POWER10 v1.0")
779 #endif /* defined (TARGET_PPC64) */
780 
781 /***************************************************************************/
782 /* PowerPC CPU aliases                                                     */
783 
784 PowerPCCPUAlias ppc_cpu_aliases[] = {
785     { "403", "403gc" },
786     { "405", "405d4" },
787     { "405cr", "405crc" },
788     { "405gp", "405gpd" },
789     { "405gpe", "405crc" },
790     { "x2vp7", "x2vp4" },
791     { "x2vp50", "x2vp20" },
792 
793     { "440ep", "440epb" },
794     { "460ex", "460exb" },
795 #if defined(TODO_USER_ONLY)
796     { "440gp", "440gpc" },
797     { "440gr", "440gra" },
798     { "440gx", "440gxf" },
799 
800     { "rcpu", "mpc5xx" },
801     /* MPC5xx microcontrollers */
802     { "mgt560", "mpc5xx" },
803     { "mpc509", "mpc5xx" },
804     { "mpc533", "mpc5xx" },
805     { "mpc534", "mpc5xx" },
806     { "mpc555", "mpc5xx" },
807     { "mpc556", "mpc5xx" },
808     { "mpc560", "mpc5xx" },
809     { "mpc561", "mpc5xx" },
810     { "mpc562", "mpc5xx" },
811     { "mpc563", "mpc5xx" },
812     { "mpc564", "mpc5xx" },
813     { "mpc565", "mpc5xx" },
814     { "mpc566", "mpc5xx" },
815 
816     { "powerquicc", "mpc8xx" },
817     /* MPC8xx microcontrollers */
818     { "mgt823", "mpc8xx" },
819     { "mpc821", "mpc8xx" },
820     { "mpc823", "mpc8xx" },
821     { "mpc850", "mpc8xx" },
822     { "mpc852t", "mpc8xx" },
823     { "mpc855t", "mpc8xx" },
824     { "mpc857", "mpc8xx" },
825     { "mpc859", "mpc8xx" },
826     { "mpc860", "mpc8xx" },
827     { "mpc862", "mpc8xx" },
828     { "mpc866", "mpc8xx" },
829     { "mpc870", "mpc8xx" },
830     { "mpc875", "mpc8xx" },
831     { "mpc880", "mpc8xx" },
832     { "mpc885", "mpc8xx" },
833 #endif
834 
835     /* PowerPC MPC603 microcontrollers */
836     { "mpc8240", "603" },
837 
838     { "mpc52xx", "mpc5200_v12" },
839     { "mpc5200", "mpc5200_v12" },
840     { "mpc5200b", "mpc5200b_v21" },
841 
842     { "mpc82xx", "g2legp3" },
843     { "powerquicc-ii", "g2legp3" },
844     { "mpc8241", "g2hip4" },
845     { "mpc8245", "g2hip4" },
846     { "mpc8247", "g2legp3" },
847     { "mpc8248", "g2legp3" },
848     { "mpc8250", "g2hip4" },
849     { "mpc8250_hip3", "g2hip3" },
850     { "mpc8250_hip4", "g2hip4" },
851     { "mpc8255", "g2hip4" },
852     { "mpc8255_hip3", "g2hip3" },
853     { "mpc8255_hip4", "g2hip4" },
854     { "mpc8260", "g2hip4" },
855     { "mpc8260_hip3", "g2hip3" },
856     { "mpc8260_hip4", "g2hip4" },
857     { "mpc8264", "g2hip4" },
858     { "mpc8264_hip3", "g2hip3" },
859     { "mpc8264_hip4", "g2hip4" },
860     { "mpc8265", "g2hip4" },
861     { "mpc8265_hip3", "g2hip3" },
862     { "mpc8265_hip4", "g2hip4" },
863     { "mpc8266", "g2hip4" },
864     { "mpc8266_hip3", "g2hip3" },
865     { "mpc8266_hip4", "g2hip4" },
866     { "mpc8270", "g2legp3" },
867     { "mpc8271", "g2legp3" },
868     { "mpc8272", "g2legp3" },
869     { "mpc8275", "g2legp3" },
870     { "mpc8280", "g2legp3" },
871     { "e200", "e200z6" },
872     { "e300", "e300c3" },
873     { "mpc8347", "mpc8347t" },
874     { "mpc8347a", "mpc8347at" },
875     { "mpc8347e", "mpc8347et" },
876     { "mpc8347ea", "mpc8347eat" },
877     { "e500", "e500v2_v22" },
878     { "e500v1", "e500_v20" },
879     { "e500v2", "e500v2_v22" },
880     { "mpc8533", "mpc8533_v11" },
881     { "mpc8533e", "mpc8533e_v11" },
882     { "mpc8540", "mpc8540_v21" },
883     { "mpc8541", "mpc8541_v11" },
884     { "mpc8541e", "mpc8541e_v11" },
885     { "mpc8543", "mpc8543_v21" },
886     { "mpc8543e", "mpc8543e_v21" },
887     { "mpc8544", "mpc8544_v11" },
888     { "mpc8544e", "mpc8544e_v11" },
889     { "mpc8545", "mpc8545_v21" },
890     { "mpc8545e", "mpc8545e_v21" },
891     { "mpc8547e", "mpc8547e_v21" },
892     { "mpc8548", "mpc8548_v21" },
893     { "mpc8548e", "mpc8548e_v21" },
894     { "mpc8555", "mpc8555_v11" },
895     { "mpc8555e", "mpc8555e_v11" },
896     { "mpc8560", "mpc8560_v21" },
897     { "601",  "601_v2" },
898     { "601v", "601_v2" },
899     { "vanilla", "603" },
900     { "603e", "603e_v4.1" },
901     { "stretch", "603e_v4.1" },
902     { "vaillant", "603e7v" },
903     { "603r", "603e7t" },
904     { "goldeneye", "603e7t" },
905     { "604e", "604e_v2.4" },
906     { "sirocco", "604e_v2.4" },
907     { "mach5", "604r" },
908     { "740", "740_v3.1" },
909     { "arthur", "740_v3.1" },
910     { "750", "750_v3.1" },
911     { "typhoon", "750_v3.1" },
912     { "g3",      "750_v3.1" },
913     { "conan/doyle", "750p" },
914     { "750cl", "750cl_v2.0" },
915     { "750cx", "750cx_v2.2" },
916     { "750cxe", "750cxe_v3.1b" },
917     { "750fx", "750fx_v2.3" },
918     { "750gx", "750gx_v1.2" },
919     { "750l", "750l_v3.2" },
920     { "lonestar", "750l_v3.2" },
921     { "745", "745_v2.8" },
922     { "755", "755_v2.8" },
923     { "goldfinger", "755_v2.8" },
924     { "7400", "7400_v2.9" },
925     { "max", "7400_v2.9" },
926     { "g4",  "7400_v2.9" },
927     { "7410", "7410_v1.4" },
928     { "nitro", "7410_v1.4" },
929     { "7448", "7448_v2.1" },
930     { "7450", "7450_v2.1" },
931     { "vger", "7450_v2.1" },
932     { "7441", "7441_v2.3" },
933     { "7451", "7451_v2.3" },
934     { "7445", "7445_v3.2" },
935     { "7455", "7455_v3.2" },
936     { "apollo6", "7455_v3.2" },
937     { "7447", "7447_v1.1" },
938     { "7457", "7457_v1.2" },
939     { "apollo7", "7457_v1.2" },
940     { "7447a", "7447a_v1.2" },
941     { "7457a", "7457a_v1.2" },
942     { "apollo7pm", "7457a_v1.0" },
943 #if defined(TARGET_PPC64)
944     { "970", "970_v2.2" },
945     { "970fx", "970fx_v3.1" },
946     { "970mp", "970mp_v1.1" },
947     { "power5+", "power5+_v2.1" },
948     { "power5gs", "power5+_v2.1" },
949     { "power7", "power7_v2.3" },
950     { "power7+", "power7+_v2.1" },
951     { "power8e", "power8e_v2.1" },
952     { "power8", "power8_v2.0" },
953     { "power8nvl", "power8nvl_v1.0" },
954     { "power9", "power9_v2.0" },
955     { "power10", "power10_v1.0" },
956 #endif
957 
958     /* Generic PowerPCs */
959 #if defined(TARGET_PPC64)
960     { "ppc64", "970fx_v3.1" },
961 #endif
962     { "ppc32", "604" },
963     { "ppc", "604" },
964     { "default", "604" },
965     { NULL, NULL }
966 };
967