gdb-sim.c 67 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298
  1. /* This file is part of GDB.
  2. Copyright 2004-2022 Free Software Foundation, Inc.
  3. This program is free software; you can redistribute it and/or modify
  4. it under the terms of the GNU General Public License as published by
  5. the Free Software Foundation; either version 3 of the License, or
  6. (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with this program. If not, see <http://www.gnu.org/licenses/>.
  13. */
  14. #include "psim.h"
  15. #include "options.h"
  16. #include "registers.h"
  17. #include "ansidecl.h"
  18. #include "sim_callbacks.h"
  19. #include "sim/callback.h"
  20. #include "sim/sim.h"
  21. #include "gdb/sim-ppc.h"
  22. /* Return the register name for the supplied SPR if any, or NULL if
  23. none. */
  24. const char *
  25. sim_spr_register_name (int spr)
  26. {
  27. if (spr_is_valid (spr))
  28. return spr_name (spr);
  29. else
  30. return NULL;
  31. }
  32. #define regnum2spr(SPR) sim_spr_register_name (SPR)
  33. /* Return the name of the register whose number is REGNUM, or zero if
  34. REGNUM is an invalid register number. */
  35. static const char *
  36. regnum2name (int regnum)
  37. {
  38. switch (regnum)
  39. {
  40. case sim_ppc_r0_regnum: return "r0";
  41. case sim_ppc_r1_regnum: return "r1";
  42. case sim_ppc_r2_regnum: return "r2";
  43. case sim_ppc_r3_regnum: return "r3";
  44. case sim_ppc_r4_regnum: return "r4";
  45. case sim_ppc_r5_regnum: return "r5";
  46. case sim_ppc_r6_regnum: return "r6";
  47. case sim_ppc_r7_regnum: return "r7";
  48. case sim_ppc_r8_regnum: return "r8";
  49. case sim_ppc_r9_regnum: return "r9";
  50. case sim_ppc_r10_regnum: return "r10";
  51. case sim_ppc_r11_regnum: return "r11";
  52. case sim_ppc_r12_regnum: return "r12";
  53. case sim_ppc_r13_regnum: return "r13";
  54. case sim_ppc_r14_regnum: return "r14";
  55. case sim_ppc_r15_regnum: return "r15";
  56. case sim_ppc_r16_regnum: return "r16";
  57. case sim_ppc_r17_regnum: return "r17";
  58. case sim_ppc_r18_regnum: return "r18";
  59. case sim_ppc_r19_regnum: return "r19";
  60. case sim_ppc_r20_regnum: return "r20";
  61. case sim_ppc_r21_regnum: return "r21";
  62. case sim_ppc_r22_regnum: return "r22";
  63. case sim_ppc_r23_regnum: return "r23";
  64. case sim_ppc_r24_regnum: return "r24";
  65. case sim_ppc_r25_regnum: return "r25";
  66. case sim_ppc_r26_regnum: return "r26";
  67. case sim_ppc_r27_regnum: return "r27";
  68. case sim_ppc_r28_regnum: return "r28";
  69. case sim_ppc_r29_regnum: return "r29";
  70. case sim_ppc_r30_regnum: return "r30";
  71. case sim_ppc_r31_regnum: return "r31";
  72. case sim_ppc_f0_regnum: return "f0";
  73. case sim_ppc_f1_regnum: return "f1";
  74. case sim_ppc_f2_regnum: return "f2";
  75. case sim_ppc_f3_regnum: return "f3";
  76. case sim_ppc_f4_regnum: return "f4";
  77. case sim_ppc_f5_regnum: return "f5";
  78. case sim_ppc_f6_regnum: return "f6";
  79. case sim_ppc_f7_regnum: return "f7";
  80. case sim_ppc_f8_regnum: return "f8";
  81. case sim_ppc_f9_regnum: return "f9";
  82. case sim_ppc_f10_regnum: return "f10";
  83. case sim_ppc_f11_regnum: return "f11";
  84. case sim_ppc_f12_regnum: return "f12";
  85. case sim_ppc_f13_regnum: return "f13";
  86. case sim_ppc_f14_regnum: return "f14";
  87. case sim_ppc_f15_regnum: return "f15";
  88. case sim_ppc_f16_regnum: return "f16";
  89. case sim_ppc_f17_regnum: return "f17";
  90. case sim_ppc_f18_regnum: return "f18";
  91. case sim_ppc_f19_regnum: return "f19";
  92. case sim_ppc_f20_regnum: return "f20";
  93. case sim_ppc_f21_regnum: return "f21";
  94. case sim_ppc_f22_regnum: return "f22";
  95. case sim_ppc_f23_regnum: return "f23";
  96. case sim_ppc_f24_regnum: return "f24";
  97. case sim_ppc_f25_regnum: return "f25";
  98. case sim_ppc_f26_regnum: return "f26";
  99. case sim_ppc_f27_regnum: return "f27";
  100. case sim_ppc_f28_regnum: return "f28";
  101. case sim_ppc_f29_regnum: return "f29";
  102. case sim_ppc_f30_regnum: return "f30";
  103. case sim_ppc_f31_regnum: return "f31";
  104. case sim_ppc_vr0_regnum: return "vr0";
  105. case sim_ppc_vr1_regnum: return "vr1";
  106. case sim_ppc_vr2_regnum: return "vr2";
  107. case sim_ppc_vr3_regnum: return "vr3";
  108. case sim_ppc_vr4_regnum: return "vr4";
  109. case sim_ppc_vr5_regnum: return "vr5";
  110. case sim_ppc_vr6_regnum: return "vr6";
  111. case sim_ppc_vr7_regnum: return "vr7";
  112. case sim_ppc_vr8_regnum: return "vr8";
  113. case sim_ppc_vr9_regnum: return "vr9";
  114. case sim_ppc_vr10_regnum: return "vr10";
  115. case sim_ppc_vr11_regnum: return "vr11";
  116. case sim_ppc_vr12_regnum: return "vr12";
  117. case sim_ppc_vr13_regnum: return "vr13";
  118. case sim_ppc_vr14_regnum: return "vr14";
  119. case sim_ppc_vr15_regnum: return "vr15";
  120. case sim_ppc_vr16_regnum: return "vr16";
  121. case sim_ppc_vr17_regnum: return "vr17";
  122. case sim_ppc_vr18_regnum: return "vr18";
  123. case sim_ppc_vr19_regnum: return "vr19";
  124. case sim_ppc_vr20_regnum: return "vr20";
  125. case sim_ppc_vr21_regnum: return "vr21";
  126. case sim_ppc_vr22_regnum: return "vr22";
  127. case sim_ppc_vr23_regnum: return "vr23";
  128. case sim_ppc_vr24_regnum: return "vr24";
  129. case sim_ppc_vr25_regnum: return "vr25";
  130. case sim_ppc_vr26_regnum: return "vr26";
  131. case sim_ppc_vr27_regnum: return "vr27";
  132. case sim_ppc_vr28_regnum: return "vr28";
  133. case sim_ppc_vr29_regnum: return "vr29";
  134. case sim_ppc_vr30_regnum: return "vr30";
  135. case sim_ppc_vr31_regnum: return "vr31";
  136. case sim_ppc_rh0_regnum: return "rh0";
  137. case sim_ppc_rh1_regnum: return "rh1";
  138. case sim_ppc_rh2_regnum: return "rh2";
  139. case sim_ppc_rh3_regnum: return "rh3";
  140. case sim_ppc_rh4_regnum: return "rh4";
  141. case sim_ppc_rh5_regnum: return "rh5";
  142. case sim_ppc_rh6_regnum: return "rh6";
  143. case sim_ppc_rh7_regnum: return "rh7";
  144. case sim_ppc_rh8_regnum: return "rh8";
  145. case sim_ppc_rh9_regnum: return "rh9";
  146. case sim_ppc_rh10_regnum: return "rh10";
  147. case sim_ppc_rh11_regnum: return "rh11";
  148. case sim_ppc_rh12_regnum: return "rh12";
  149. case sim_ppc_rh13_regnum: return "rh13";
  150. case sim_ppc_rh14_regnum: return "rh14";
  151. case sim_ppc_rh15_regnum: return "rh15";
  152. case sim_ppc_rh16_regnum: return "rh16";
  153. case sim_ppc_rh17_regnum: return "rh17";
  154. case sim_ppc_rh18_regnum: return "rh18";
  155. case sim_ppc_rh19_regnum: return "rh19";
  156. case sim_ppc_rh20_regnum: return "rh20";
  157. case sim_ppc_rh21_regnum: return "rh21";
  158. case sim_ppc_rh22_regnum: return "rh22";
  159. case sim_ppc_rh23_regnum: return "rh23";
  160. case sim_ppc_rh24_regnum: return "rh24";
  161. case sim_ppc_rh25_regnum: return "rh25";
  162. case sim_ppc_rh26_regnum: return "rh26";
  163. case sim_ppc_rh27_regnum: return "rh27";
  164. case sim_ppc_rh28_regnum: return "rh28";
  165. case sim_ppc_rh29_regnum: return "rh29";
  166. case sim_ppc_rh30_regnum: return "rh30";
  167. case sim_ppc_rh31_regnum: return "rh31";
  168. case sim_ppc_ev0_regnum: return "ev0";
  169. case sim_ppc_ev1_regnum: return "ev1";
  170. case sim_ppc_ev2_regnum: return "ev2";
  171. case sim_ppc_ev3_regnum: return "ev3";
  172. case sim_ppc_ev4_regnum: return "ev4";
  173. case sim_ppc_ev5_regnum: return "ev5";
  174. case sim_ppc_ev6_regnum: return "ev6";
  175. case sim_ppc_ev7_regnum: return "ev7";
  176. case sim_ppc_ev8_regnum: return "ev8";
  177. case sim_ppc_ev9_regnum: return "ev9";
  178. case sim_ppc_ev10_regnum: return "ev10";
  179. case sim_ppc_ev11_regnum: return "ev11";
  180. case sim_ppc_ev12_regnum: return "ev12";
  181. case sim_ppc_ev13_regnum: return "ev13";
  182. case sim_ppc_ev14_regnum: return "ev14";
  183. case sim_ppc_ev15_regnum: return "ev15";
  184. case sim_ppc_ev16_regnum: return "ev16";
  185. case sim_ppc_ev17_regnum: return "ev17";
  186. case sim_ppc_ev18_regnum: return "ev18";
  187. case sim_ppc_ev19_regnum: return "ev19";
  188. case sim_ppc_ev20_regnum: return "ev20";
  189. case sim_ppc_ev21_regnum: return "ev21";
  190. case sim_ppc_ev22_regnum: return "ev22";
  191. case sim_ppc_ev23_regnum: return "ev23";
  192. case sim_ppc_ev24_regnum: return "ev24";
  193. case sim_ppc_ev25_regnum: return "ev25";
  194. case sim_ppc_ev26_regnum: return "ev26";
  195. case sim_ppc_ev27_regnum: return "ev27";
  196. case sim_ppc_ev28_regnum: return "ev28";
  197. case sim_ppc_ev29_regnum: return "ev29";
  198. case sim_ppc_ev30_regnum: return "ev30";
  199. case sim_ppc_ev31_regnum: return "ev31";
  200. case sim_ppc_sr0_regnum: return "sr0";
  201. case sim_ppc_sr1_regnum: return "sr1";
  202. case sim_ppc_sr2_regnum: return "sr2";
  203. case sim_ppc_sr3_regnum: return "sr3";
  204. case sim_ppc_sr4_regnum: return "sr4";
  205. case sim_ppc_sr5_regnum: return "sr5";
  206. case sim_ppc_sr6_regnum: return "sr6";
  207. case sim_ppc_sr7_regnum: return "sr7";
  208. case sim_ppc_sr8_regnum: return "sr8";
  209. case sim_ppc_sr9_regnum: return "sr9";
  210. case sim_ppc_sr10_regnum: return "sr10";
  211. case sim_ppc_sr11_regnum: return "sr11";
  212. case sim_ppc_sr12_regnum: return "sr12";
  213. case sim_ppc_sr13_regnum: return "sr13";
  214. case sim_ppc_sr14_regnum: return "sr14";
  215. case sim_ppc_sr15_regnum: return "sr15";
  216. case sim_ppc_pc_regnum: return "pc";
  217. case sim_ppc_ps_regnum: return "ps";
  218. case sim_ppc_cr_regnum: return "cr";
  219. case sim_ppc_fpscr_regnum: return "fpscr";
  220. case sim_ppc_acc_regnum: return "acc";
  221. case sim_ppc_vscr_regnum: return "vscr";
  222. case sim_ppc_spr0_regnum: return regnum2spr (0);
  223. case sim_ppc_spr1_regnum: return regnum2spr (1);
  224. case sim_ppc_spr2_regnum: return regnum2spr (2);
  225. case sim_ppc_spr3_regnum: return regnum2spr (3);
  226. case sim_ppc_spr4_regnum: return regnum2spr (4);
  227. case sim_ppc_spr5_regnum: return regnum2spr (5);
  228. case sim_ppc_spr6_regnum: return regnum2spr (6);
  229. case sim_ppc_spr7_regnum: return regnum2spr (7);
  230. case sim_ppc_spr8_regnum: return regnum2spr (8);
  231. case sim_ppc_spr9_regnum: return regnum2spr (9);
  232. case sim_ppc_spr10_regnum: return regnum2spr (10);
  233. case sim_ppc_spr11_regnum: return regnum2spr (11);
  234. case sim_ppc_spr12_regnum: return regnum2spr (12);
  235. case sim_ppc_spr13_regnum: return regnum2spr (13);
  236. case sim_ppc_spr14_regnum: return regnum2spr (14);
  237. case sim_ppc_spr15_regnum: return regnum2spr (15);
  238. case sim_ppc_spr16_regnum: return regnum2spr (16);
  239. case sim_ppc_spr17_regnum: return regnum2spr (17);
  240. case sim_ppc_spr18_regnum: return regnum2spr (18);
  241. case sim_ppc_spr19_regnum: return regnum2spr (19);
  242. case sim_ppc_spr20_regnum: return regnum2spr (20);
  243. case sim_ppc_spr21_regnum: return regnum2spr (21);
  244. case sim_ppc_spr22_regnum: return regnum2spr (22);
  245. case sim_ppc_spr23_regnum: return regnum2spr (23);
  246. case sim_ppc_spr24_regnum: return regnum2spr (24);
  247. case sim_ppc_spr25_regnum: return regnum2spr (25);
  248. case sim_ppc_spr26_regnum: return regnum2spr (26);
  249. case sim_ppc_spr27_regnum: return regnum2spr (27);
  250. case sim_ppc_spr28_regnum: return regnum2spr (28);
  251. case sim_ppc_spr29_regnum: return regnum2spr (29);
  252. case sim_ppc_spr30_regnum: return regnum2spr (30);
  253. case sim_ppc_spr31_regnum: return regnum2spr (31);
  254. case sim_ppc_spr32_regnum: return regnum2spr (32);
  255. case sim_ppc_spr33_regnum: return regnum2spr (33);
  256. case sim_ppc_spr34_regnum: return regnum2spr (34);
  257. case sim_ppc_spr35_regnum: return regnum2spr (35);
  258. case sim_ppc_spr36_regnum: return regnum2spr (36);
  259. case sim_ppc_spr37_regnum: return regnum2spr (37);
  260. case sim_ppc_spr38_regnum: return regnum2spr (38);
  261. case sim_ppc_spr39_regnum: return regnum2spr (39);
  262. case sim_ppc_spr40_regnum: return regnum2spr (40);
  263. case sim_ppc_spr41_regnum: return regnum2spr (41);
  264. case sim_ppc_spr42_regnum: return regnum2spr (42);
  265. case sim_ppc_spr43_regnum: return regnum2spr (43);
  266. case sim_ppc_spr44_regnum: return regnum2spr (44);
  267. case sim_ppc_spr45_regnum: return regnum2spr (45);
  268. case sim_ppc_spr46_regnum: return regnum2spr (46);
  269. case sim_ppc_spr47_regnum: return regnum2spr (47);
  270. case sim_ppc_spr48_regnum: return regnum2spr (48);
  271. case sim_ppc_spr49_regnum: return regnum2spr (49);
  272. case sim_ppc_spr50_regnum: return regnum2spr (50);
  273. case sim_ppc_spr51_regnum: return regnum2spr (51);
  274. case sim_ppc_spr52_regnum: return regnum2spr (52);
  275. case sim_ppc_spr53_regnum: return regnum2spr (53);
  276. case sim_ppc_spr54_regnum: return regnum2spr (54);
  277. case sim_ppc_spr55_regnum: return regnum2spr (55);
  278. case sim_ppc_spr56_regnum: return regnum2spr (56);
  279. case sim_ppc_spr57_regnum: return regnum2spr (57);
  280. case sim_ppc_spr58_regnum: return regnum2spr (58);
  281. case sim_ppc_spr59_regnum: return regnum2spr (59);
  282. case sim_ppc_spr60_regnum: return regnum2spr (60);
  283. case sim_ppc_spr61_regnum: return regnum2spr (61);
  284. case sim_ppc_spr62_regnum: return regnum2spr (62);
  285. case sim_ppc_spr63_regnum: return regnum2spr (63);
  286. case sim_ppc_spr64_regnum: return regnum2spr (64);
  287. case sim_ppc_spr65_regnum: return regnum2spr (65);
  288. case sim_ppc_spr66_regnum: return regnum2spr (66);
  289. case sim_ppc_spr67_regnum: return regnum2spr (67);
  290. case sim_ppc_spr68_regnum: return regnum2spr (68);
  291. case sim_ppc_spr69_regnum: return regnum2spr (69);
  292. case sim_ppc_spr70_regnum: return regnum2spr (70);
  293. case sim_ppc_spr71_regnum: return regnum2spr (71);
  294. case sim_ppc_spr72_regnum: return regnum2spr (72);
  295. case sim_ppc_spr73_regnum: return regnum2spr (73);
  296. case sim_ppc_spr74_regnum: return regnum2spr (74);
  297. case sim_ppc_spr75_regnum: return regnum2spr (75);
  298. case sim_ppc_spr76_regnum: return regnum2spr (76);
  299. case sim_ppc_spr77_regnum: return regnum2spr (77);
  300. case sim_ppc_spr78_regnum: return regnum2spr (78);
  301. case sim_ppc_spr79_regnum: return regnum2spr (79);
  302. case sim_ppc_spr80_regnum: return regnum2spr (80);
  303. case sim_ppc_spr81_regnum: return regnum2spr (81);
  304. case sim_ppc_spr82_regnum: return regnum2spr (82);
  305. case sim_ppc_spr83_regnum: return regnum2spr (83);
  306. case sim_ppc_spr84_regnum: return regnum2spr (84);
  307. case sim_ppc_spr85_regnum: return regnum2spr (85);
  308. case sim_ppc_spr86_regnum: return regnum2spr (86);
  309. case sim_ppc_spr87_regnum: return regnum2spr (87);
  310. case sim_ppc_spr88_regnum: return regnum2spr (88);
  311. case sim_ppc_spr89_regnum: return regnum2spr (89);
  312. case sim_ppc_spr90_regnum: return regnum2spr (90);
  313. case sim_ppc_spr91_regnum: return regnum2spr (91);
  314. case sim_ppc_spr92_regnum: return regnum2spr (92);
  315. case sim_ppc_spr93_regnum: return regnum2spr (93);
  316. case sim_ppc_spr94_regnum: return regnum2spr (94);
  317. case sim_ppc_spr95_regnum: return regnum2spr (95);
  318. case sim_ppc_spr96_regnum: return regnum2spr (96);
  319. case sim_ppc_spr97_regnum: return regnum2spr (97);
  320. case sim_ppc_spr98_regnum: return regnum2spr (98);
  321. case sim_ppc_spr99_regnum: return regnum2spr (99);
  322. case sim_ppc_spr100_regnum: return regnum2spr (100);
  323. case sim_ppc_spr101_regnum: return regnum2spr (101);
  324. case sim_ppc_spr102_regnum: return regnum2spr (102);
  325. case sim_ppc_spr103_regnum: return regnum2spr (103);
  326. case sim_ppc_spr104_regnum: return regnum2spr (104);
  327. case sim_ppc_spr105_regnum: return regnum2spr (105);
  328. case sim_ppc_spr106_regnum: return regnum2spr (106);
  329. case sim_ppc_spr107_regnum: return regnum2spr (107);
  330. case sim_ppc_spr108_regnum: return regnum2spr (108);
  331. case sim_ppc_spr109_regnum: return regnum2spr (109);
  332. case sim_ppc_spr110_regnum: return regnum2spr (110);
  333. case sim_ppc_spr111_regnum: return regnum2spr (111);
  334. case sim_ppc_spr112_regnum: return regnum2spr (112);
  335. case sim_ppc_spr113_regnum: return regnum2spr (113);
  336. case sim_ppc_spr114_regnum: return regnum2spr (114);
  337. case sim_ppc_spr115_regnum: return regnum2spr (115);
  338. case sim_ppc_spr116_regnum: return regnum2spr (116);
  339. case sim_ppc_spr117_regnum: return regnum2spr (117);
  340. case sim_ppc_spr118_regnum: return regnum2spr (118);
  341. case sim_ppc_spr119_regnum: return regnum2spr (119);
  342. case sim_ppc_spr120_regnum: return regnum2spr (120);
  343. case sim_ppc_spr121_regnum: return regnum2spr (121);
  344. case sim_ppc_spr122_regnum: return regnum2spr (122);
  345. case sim_ppc_spr123_regnum: return regnum2spr (123);
  346. case sim_ppc_spr124_regnum: return regnum2spr (124);
  347. case sim_ppc_spr125_regnum: return regnum2spr (125);
  348. case sim_ppc_spr126_regnum: return regnum2spr (126);
  349. case sim_ppc_spr127_regnum: return regnum2spr (127);
  350. case sim_ppc_spr128_regnum: return regnum2spr (128);
  351. case sim_ppc_spr129_regnum: return regnum2spr (129);
  352. case sim_ppc_spr130_regnum: return regnum2spr (130);
  353. case sim_ppc_spr131_regnum: return regnum2spr (131);
  354. case sim_ppc_spr132_regnum: return regnum2spr (132);
  355. case sim_ppc_spr133_regnum: return regnum2spr (133);
  356. case sim_ppc_spr134_regnum: return regnum2spr (134);
  357. case sim_ppc_spr135_regnum: return regnum2spr (135);
  358. case sim_ppc_spr136_regnum: return regnum2spr (136);
  359. case sim_ppc_spr137_regnum: return regnum2spr (137);
  360. case sim_ppc_spr138_regnum: return regnum2spr (138);
  361. case sim_ppc_spr139_regnum: return regnum2spr (139);
  362. case sim_ppc_spr140_regnum: return regnum2spr (140);
  363. case sim_ppc_spr141_regnum: return regnum2spr (141);
  364. case sim_ppc_spr142_regnum: return regnum2spr (142);
  365. case sim_ppc_spr143_regnum: return regnum2spr (143);
  366. case sim_ppc_spr144_regnum: return regnum2spr (144);
  367. case sim_ppc_spr145_regnum: return regnum2spr (145);
  368. case sim_ppc_spr146_regnum: return regnum2spr (146);
  369. case sim_ppc_spr147_regnum: return regnum2spr (147);
  370. case sim_ppc_spr148_regnum: return regnum2spr (148);
  371. case sim_ppc_spr149_regnum: return regnum2spr (149);
  372. case sim_ppc_spr150_regnum: return regnum2spr (150);
  373. case sim_ppc_spr151_regnum: return regnum2spr (151);
  374. case sim_ppc_spr152_regnum: return regnum2spr (152);
  375. case sim_ppc_spr153_regnum: return regnum2spr (153);
  376. case sim_ppc_spr154_regnum: return regnum2spr (154);
  377. case sim_ppc_spr155_regnum: return regnum2spr (155);
  378. case sim_ppc_spr156_regnum: return regnum2spr (156);
  379. case sim_ppc_spr157_regnum: return regnum2spr (157);
  380. case sim_ppc_spr158_regnum: return regnum2spr (158);
  381. case sim_ppc_spr159_regnum: return regnum2spr (159);
  382. case sim_ppc_spr160_regnum: return regnum2spr (160);
  383. case sim_ppc_spr161_regnum: return regnum2spr (161);
  384. case sim_ppc_spr162_regnum: return regnum2spr (162);
  385. case sim_ppc_spr163_regnum: return regnum2spr (163);
  386. case sim_ppc_spr164_regnum: return regnum2spr (164);
  387. case sim_ppc_spr165_regnum: return regnum2spr (165);
  388. case sim_ppc_spr166_regnum: return regnum2spr (166);
  389. case sim_ppc_spr167_regnum: return regnum2spr (167);
  390. case sim_ppc_spr168_regnum: return regnum2spr (168);
  391. case sim_ppc_spr169_regnum: return regnum2spr (169);
  392. case sim_ppc_spr170_regnum: return regnum2spr (170);
  393. case sim_ppc_spr171_regnum: return regnum2spr (171);
  394. case sim_ppc_spr172_regnum: return regnum2spr (172);
  395. case sim_ppc_spr173_regnum: return regnum2spr (173);
  396. case sim_ppc_spr174_regnum: return regnum2spr (174);
  397. case sim_ppc_spr175_regnum: return regnum2spr (175);
  398. case sim_ppc_spr176_regnum: return regnum2spr (176);
  399. case sim_ppc_spr177_regnum: return regnum2spr (177);
  400. case sim_ppc_spr178_regnum: return regnum2spr (178);
  401. case sim_ppc_spr179_regnum: return regnum2spr (179);
  402. case sim_ppc_spr180_regnum: return regnum2spr (180);
  403. case sim_ppc_spr181_regnum: return regnum2spr (181);
  404. case sim_ppc_spr182_regnum: return regnum2spr (182);
  405. case sim_ppc_spr183_regnum: return regnum2spr (183);
  406. case sim_ppc_spr184_regnum: return regnum2spr (184);
  407. case sim_ppc_spr185_regnum: return regnum2spr (185);
  408. case sim_ppc_spr186_regnum: return regnum2spr (186);
  409. case sim_ppc_spr187_regnum: return regnum2spr (187);
  410. case sim_ppc_spr188_regnum: return regnum2spr (188);
  411. case sim_ppc_spr189_regnum: return regnum2spr (189);
  412. case sim_ppc_spr190_regnum: return regnum2spr (190);
  413. case sim_ppc_spr191_regnum: return regnum2spr (191);
  414. case sim_ppc_spr192_regnum: return regnum2spr (192);
  415. case sim_ppc_spr193_regnum: return regnum2spr (193);
  416. case sim_ppc_spr194_regnum: return regnum2spr (194);
  417. case sim_ppc_spr195_regnum: return regnum2spr (195);
  418. case sim_ppc_spr196_regnum: return regnum2spr (196);
  419. case sim_ppc_spr197_regnum: return regnum2spr (197);
  420. case sim_ppc_spr198_regnum: return regnum2spr (198);
  421. case sim_ppc_spr199_regnum: return regnum2spr (199);
  422. case sim_ppc_spr200_regnum: return regnum2spr (200);
  423. case sim_ppc_spr201_regnum: return regnum2spr (201);
  424. case sim_ppc_spr202_regnum: return regnum2spr (202);
  425. case sim_ppc_spr203_regnum: return regnum2spr (203);
  426. case sim_ppc_spr204_regnum: return regnum2spr (204);
  427. case sim_ppc_spr205_regnum: return regnum2spr (205);
  428. case sim_ppc_spr206_regnum: return regnum2spr (206);
  429. case sim_ppc_spr207_regnum: return regnum2spr (207);
  430. case sim_ppc_spr208_regnum: return regnum2spr (208);
  431. case sim_ppc_spr209_regnum: return regnum2spr (209);
  432. case sim_ppc_spr210_regnum: return regnum2spr (210);
  433. case sim_ppc_spr211_regnum: return regnum2spr (211);
  434. case sim_ppc_spr212_regnum: return regnum2spr (212);
  435. case sim_ppc_spr213_regnum: return regnum2spr (213);
  436. case sim_ppc_spr214_regnum: return regnum2spr (214);
  437. case sim_ppc_spr215_regnum: return regnum2spr (215);
  438. case sim_ppc_spr216_regnum: return regnum2spr (216);
  439. case sim_ppc_spr217_regnum: return regnum2spr (217);
  440. case sim_ppc_spr218_regnum: return regnum2spr (218);
  441. case sim_ppc_spr219_regnum: return regnum2spr (219);
  442. case sim_ppc_spr220_regnum: return regnum2spr (220);
  443. case sim_ppc_spr221_regnum: return regnum2spr (221);
  444. case sim_ppc_spr222_regnum: return regnum2spr (222);
  445. case sim_ppc_spr223_regnum: return regnum2spr (223);
  446. case sim_ppc_spr224_regnum: return regnum2spr (224);
  447. case sim_ppc_spr225_regnum: return regnum2spr (225);
  448. case sim_ppc_spr226_regnum: return regnum2spr (226);
  449. case sim_ppc_spr227_regnum: return regnum2spr (227);
  450. case sim_ppc_spr228_regnum: return regnum2spr (228);
  451. case sim_ppc_spr229_regnum: return regnum2spr (229);
  452. case sim_ppc_spr230_regnum: return regnum2spr (230);
  453. case sim_ppc_spr231_regnum: return regnum2spr (231);
  454. case sim_ppc_spr232_regnum: return regnum2spr (232);
  455. case sim_ppc_spr233_regnum: return regnum2spr (233);
  456. case sim_ppc_spr234_regnum: return regnum2spr (234);
  457. case sim_ppc_spr235_regnum: return regnum2spr (235);
  458. case sim_ppc_spr236_regnum: return regnum2spr (236);
  459. case sim_ppc_spr237_regnum: return regnum2spr (237);
  460. case sim_ppc_spr238_regnum: return regnum2spr (238);
  461. case sim_ppc_spr239_regnum: return regnum2spr (239);
  462. case sim_ppc_spr240_regnum: return regnum2spr (240);
  463. case sim_ppc_spr241_regnum: return regnum2spr (241);
  464. case sim_ppc_spr242_regnum: return regnum2spr (242);
  465. case sim_ppc_spr243_regnum: return regnum2spr (243);
  466. case sim_ppc_spr244_regnum: return regnum2spr (244);
  467. case sim_ppc_spr245_regnum: return regnum2spr (245);
  468. case sim_ppc_spr246_regnum: return regnum2spr (246);
  469. case sim_ppc_spr247_regnum: return regnum2spr (247);
  470. case sim_ppc_spr248_regnum: return regnum2spr (248);
  471. case sim_ppc_spr249_regnum: return regnum2spr (249);
  472. case sim_ppc_spr250_regnum: return regnum2spr (250);
  473. case sim_ppc_spr251_regnum: return regnum2spr (251);
  474. case sim_ppc_spr252_regnum: return regnum2spr (252);
  475. case sim_ppc_spr253_regnum: return regnum2spr (253);
  476. case sim_ppc_spr254_regnum: return regnum2spr (254);
  477. case sim_ppc_spr255_regnum: return regnum2spr (255);
  478. case sim_ppc_spr256_regnum: return regnum2spr (256);
  479. case sim_ppc_spr257_regnum: return regnum2spr (257);
  480. case sim_ppc_spr258_regnum: return regnum2spr (258);
  481. case sim_ppc_spr259_regnum: return regnum2spr (259);
  482. case sim_ppc_spr260_regnum: return regnum2spr (260);
  483. case sim_ppc_spr261_regnum: return regnum2spr (261);
  484. case sim_ppc_spr262_regnum: return regnum2spr (262);
  485. case sim_ppc_spr263_regnum: return regnum2spr (263);
  486. case sim_ppc_spr264_regnum: return regnum2spr (264);
  487. case sim_ppc_spr265_regnum: return regnum2spr (265);
  488. case sim_ppc_spr266_regnum: return regnum2spr (266);
  489. case sim_ppc_spr267_regnum: return regnum2spr (267);
  490. case sim_ppc_spr268_regnum: return regnum2spr (268);
  491. case sim_ppc_spr269_regnum: return regnum2spr (269);
  492. case sim_ppc_spr270_regnum: return regnum2spr (270);
  493. case sim_ppc_spr271_regnum: return regnum2spr (271);
  494. case sim_ppc_spr272_regnum: return regnum2spr (272);
  495. case sim_ppc_spr273_regnum: return regnum2spr (273);
  496. case sim_ppc_spr274_regnum: return regnum2spr (274);
  497. case sim_ppc_spr275_regnum: return regnum2spr (275);
  498. case sim_ppc_spr276_regnum: return regnum2spr (276);
  499. case sim_ppc_spr277_regnum: return regnum2spr (277);
  500. case sim_ppc_spr278_regnum: return regnum2spr (278);
  501. case sim_ppc_spr279_regnum: return regnum2spr (279);
  502. case sim_ppc_spr280_regnum: return regnum2spr (280);
  503. case sim_ppc_spr281_regnum: return regnum2spr (281);
  504. case sim_ppc_spr282_regnum: return regnum2spr (282);
  505. case sim_ppc_spr283_regnum: return regnum2spr (283);
  506. case sim_ppc_spr284_regnum: return regnum2spr (284);
  507. case sim_ppc_spr285_regnum: return regnum2spr (285);
  508. case sim_ppc_spr286_regnum: return regnum2spr (286);
  509. case sim_ppc_spr287_regnum: return regnum2spr (287);
  510. case sim_ppc_spr288_regnum: return regnum2spr (288);
  511. case sim_ppc_spr289_regnum: return regnum2spr (289);
  512. case sim_ppc_spr290_regnum: return regnum2spr (290);
  513. case sim_ppc_spr291_regnum: return regnum2spr (291);
  514. case sim_ppc_spr292_regnum: return regnum2spr (292);
  515. case sim_ppc_spr293_regnum: return regnum2spr (293);
  516. case sim_ppc_spr294_regnum: return regnum2spr (294);
  517. case sim_ppc_spr295_regnum: return regnum2spr (295);
  518. case sim_ppc_spr296_regnum: return regnum2spr (296);
  519. case sim_ppc_spr297_regnum: return regnum2spr (297);
  520. case sim_ppc_spr298_regnum: return regnum2spr (298);
  521. case sim_ppc_spr299_regnum: return regnum2spr (299);
  522. case sim_ppc_spr300_regnum: return regnum2spr (300);
  523. case sim_ppc_spr301_regnum: return regnum2spr (301);
  524. case sim_ppc_spr302_regnum: return regnum2spr (302);
  525. case sim_ppc_spr303_regnum: return regnum2spr (303);
  526. case sim_ppc_spr304_regnum: return regnum2spr (304);
  527. case sim_ppc_spr305_regnum: return regnum2spr (305);
  528. case sim_ppc_spr306_regnum: return regnum2spr (306);
  529. case sim_ppc_spr307_regnum: return regnum2spr (307);
  530. case sim_ppc_spr308_regnum: return regnum2spr (308);
  531. case sim_ppc_spr309_regnum: return regnum2spr (309);
  532. case sim_ppc_spr310_regnum: return regnum2spr (310);
  533. case sim_ppc_spr311_regnum: return regnum2spr (311);
  534. case sim_ppc_spr312_regnum: return regnum2spr (312);
  535. case sim_ppc_spr313_regnum: return regnum2spr (313);
  536. case sim_ppc_spr314_regnum: return regnum2spr (314);
  537. case sim_ppc_spr315_regnum: return regnum2spr (315);
  538. case sim_ppc_spr316_regnum: return regnum2spr (316);
  539. case sim_ppc_spr317_regnum: return regnum2spr (317);
  540. case sim_ppc_spr318_regnum: return regnum2spr (318);
  541. case sim_ppc_spr319_regnum: return regnum2spr (319);
  542. case sim_ppc_spr320_regnum: return regnum2spr (320);
  543. case sim_ppc_spr321_regnum: return regnum2spr (321);
  544. case sim_ppc_spr322_regnum: return regnum2spr (322);
  545. case sim_ppc_spr323_regnum: return regnum2spr (323);
  546. case sim_ppc_spr324_regnum: return regnum2spr (324);
  547. case sim_ppc_spr325_regnum: return regnum2spr (325);
  548. case sim_ppc_spr326_regnum: return regnum2spr (326);
  549. case sim_ppc_spr327_regnum: return regnum2spr (327);
  550. case sim_ppc_spr328_regnum: return regnum2spr (328);
  551. case sim_ppc_spr329_regnum: return regnum2spr (329);
  552. case sim_ppc_spr330_regnum: return regnum2spr (330);
  553. case sim_ppc_spr331_regnum: return regnum2spr (331);
  554. case sim_ppc_spr332_regnum: return regnum2spr (332);
  555. case sim_ppc_spr333_regnum: return regnum2spr (333);
  556. case sim_ppc_spr334_regnum: return regnum2spr (334);
  557. case sim_ppc_spr335_regnum: return regnum2spr (335);
  558. case sim_ppc_spr336_regnum: return regnum2spr (336);
  559. case sim_ppc_spr337_regnum: return regnum2spr (337);
  560. case sim_ppc_spr338_regnum: return regnum2spr (338);
  561. case sim_ppc_spr339_regnum: return regnum2spr (339);
  562. case sim_ppc_spr340_regnum: return regnum2spr (340);
  563. case sim_ppc_spr341_regnum: return regnum2spr (341);
  564. case sim_ppc_spr342_regnum: return regnum2spr (342);
  565. case sim_ppc_spr343_regnum: return regnum2spr (343);
  566. case sim_ppc_spr344_regnum: return regnum2spr (344);
  567. case sim_ppc_spr345_regnum: return regnum2spr (345);
  568. case sim_ppc_spr346_regnum: return regnum2spr (346);
  569. case sim_ppc_spr347_regnum: return regnum2spr (347);
  570. case sim_ppc_spr348_regnum: return regnum2spr (348);
  571. case sim_ppc_spr349_regnum: return regnum2spr (349);
  572. case sim_ppc_spr350_regnum: return regnum2spr (350);
  573. case sim_ppc_spr351_regnum: return regnum2spr (351);
  574. case sim_ppc_spr352_regnum: return regnum2spr (352);
  575. case sim_ppc_spr353_regnum: return regnum2spr (353);
  576. case sim_ppc_spr354_regnum: return regnum2spr (354);
  577. case sim_ppc_spr355_regnum: return regnum2spr (355);
  578. case sim_ppc_spr356_regnum: return regnum2spr (356);
  579. case sim_ppc_spr357_regnum: return regnum2spr (357);
  580. case sim_ppc_spr358_regnum: return regnum2spr (358);
  581. case sim_ppc_spr359_regnum: return regnum2spr (359);
  582. case sim_ppc_spr360_regnum: return regnum2spr (360);
  583. case sim_ppc_spr361_regnum: return regnum2spr (361);
  584. case sim_ppc_spr362_regnum: return regnum2spr (362);
  585. case sim_ppc_spr363_regnum: return regnum2spr (363);
  586. case sim_ppc_spr364_regnum: return regnum2spr (364);
  587. case sim_ppc_spr365_regnum: return regnum2spr (365);
  588. case sim_ppc_spr366_regnum: return regnum2spr (366);
  589. case sim_ppc_spr367_regnum: return regnum2spr (367);
  590. case sim_ppc_spr368_regnum: return regnum2spr (368);
  591. case sim_ppc_spr369_regnum: return regnum2spr (369);
  592. case sim_ppc_spr370_regnum: return regnum2spr (370);
  593. case sim_ppc_spr371_regnum: return regnum2spr (371);
  594. case sim_ppc_spr372_regnum: return regnum2spr (372);
  595. case sim_ppc_spr373_regnum: return regnum2spr (373);
  596. case sim_ppc_spr374_regnum: return regnum2spr (374);
  597. case sim_ppc_spr375_regnum: return regnum2spr (375);
  598. case sim_ppc_spr376_regnum: return regnum2spr (376);
  599. case sim_ppc_spr377_regnum: return regnum2spr (377);
  600. case sim_ppc_spr378_regnum: return regnum2spr (378);
  601. case sim_ppc_spr379_regnum: return regnum2spr (379);
  602. case sim_ppc_spr380_regnum: return regnum2spr (380);
  603. case sim_ppc_spr381_regnum: return regnum2spr (381);
  604. case sim_ppc_spr382_regnum: return regnum2spr (382);
  605. case sim_ppc_spr383_regnum: return regnum2spr (383);
  606. case sim_ppc_spr384_regnum: return regnum2spr (384);
  607. case sim_ppc_spr385_regnum: return regnum2spr (385);
  608. case sim_ppc_spr386_regnum: return regnum2spr (386);
  609. case sim_ppc_spr387_regnum: return regnum2spr (387);
  610. case sim_ppc_spr388_regnum: return regnum2spr (388);
  611. case sim_ppc_spr389_regnum: return regnum2spr (389);
  612. case sim_ppc_spr390_regnum: return regnum2spr (390);
  613. case sim_ppc_spr391_regnum: return regnum2spr (391);
  614. case sim_ppc_spr392_regnum: return regnum2spr (392);
  615. case sim_ppc_spr393_regnum: return regnum2spr (393);
  616. case sim_ppc_spr394_regnum: return regnum2spr (394);
  617. case sim_ppc_spr395_regnum: return regnum2spr (395);
  618. case sim_ppc_spr396_regnum: return regnum2spr (396);
  619. case sim_ppc_spr397_regnum: return regnum2spr (397);
  620. case sim_ppc_spr398_regnum: return regnum2spr (398);
  621. case sim_ppc_spr399_regnum: return regnum2spr (399);
  622. case sim_ppc_spr400_regnum: return regnum2spr (400);
  623. case sim_ppc_spr401_regnum: return regnum2spr (401);
  624. case sim_ppc_spr402_regnum: return regnum2spr (402);
  625. case sim_ppc_spr403_regnum: return regnum2spr (403);
  626. case sim_ppc_spr404_regnum: return regnum2spr (404);
  627. case sim_ppc_spr405_regnum: return regnum2spr (405);
  628. case sim_ppc_spr406_regnum: return regnum2spr (406);
  629. case sim_ppc_spr407_regnum: return regnum2spr (407);
  630. case sim_ppc_spr408_regnum: return regnum2spr (408);
  631. case sim_ppc_spr409_regnum: return regnum2spr (409);
  632. case sim_ppc_spr410_regnum: return regnum2spr (410);
  633. case sim_ppc_spr411_regnum: return regnum2spr (411);
  634. case sim_ppc_spr412_regnum: return regnum2spr (412);
  635. case sim_ppc_spr413_regnum: return regnum2spr (413);
  636. case sim_ppc_spr414_regnum: return regnum2spr (414);
  637. case sim_ppc_spr415_regnum: return regnum2spr (415);
  638. case sim_ppc_spr416_regnum: return regnum2spr (416);
  639. case sim_ppc_spr417_regnum: return regnum2spr (417);
  640. case sim_ppc_spr418_regnum: return regnum2spr (418);
  641. case sim_ppc_spr419_regnum: return regnum2spr (419);
  642. case sim_ppc_spr420_regnum: return regnum2spr (420);
  643. case sim_ppc_spr421_regnum: return regnum2spr (421);
  644. case sim_ppc_spr422_regnum: return regnum2spr (422);
  645. case sim_ppc_spr423_regnum: return regnum2spr (423);
  646. case sim_ppc_spr424_regnum: return regnum2spr (424);
  647. case sim_ppc_spr425_regnum: return regnum2spr (425);
  648. case sim_ppc_spr426_regnum: return regnum2spr (426);
  649. case sim_ppc_spr427_regnum: return regnum2spr (427);
  650. case sim_ppc_spr428_regnum: return regnum2spr (428);
  651. case sim_ppc_spr429_regnum: return regnum2spr (429);
  652. case sim_ppc_spr430_regnum: return regnum2spr (430);
  653. case sim_ppc_spr431_regnum: return regnum2spr (431);
  654. case sim_ppc_spr432_regnum: return regnum2spr (432);
  655. case sim_ppc_spr433_regnum: return regnum2spr (433);
  656. case sim_ppc_spr434_regnum: return regnum2spr (434);
  657. case sim_ppc_spr435_regnum: return regnum2spr (435);
  658. case sim_ppc_spr436_regnum: return regnum2spr (436);
  659. case sim_ppc_spr437_regnum: return regnum2spr (437);
  660. case sim_ppc_spr438_regnum: return regnum2spr (438);
  661. case sim_ppc_spr439_regnum: return regnum2spr (439);
  662. case sim_ppc_spr440_regnum: return regnum2spr (440);
  663. case sim_ppc_spr441_regnum: return regnum2spr (441);
  664. case sim_ppc_spr442_regnum: return regnum2spr (442);
  665. case sim_ppc_spr443_regnum: return regnum2spr (443);
  666. case sim_ppc_spr444_regnum: return regnum2spr (444);
  667. case sim_ppc_spr445_regnum: return regnum2spr (445);
  668. case sim_ppc_spr446_regnum: return regnum2spr (446);
  669. case sim_ppc_spr447_regnum: return regnum2spr (447);
  670. case sim_ppc_spr448_regnum: return regnum2spr (448);
  671. case sim_ppc_spr449_regnum: return regnum2spr (449);
  672. case sim_ppc_spr450_regnum: return regnum2spr (450);
  673. case sim_ppc_spr451_regnum: return regnum2spr (451);
  674. case sim_ppc_spr452_regnum: return regnum2spr (452);
  675. case sim_ppc_spr453_regnum: return regnum2spr (453);
  676. case sim_ppc_spr454_regnum: return regnum2spr (454);
  677. case sim_ppc_spr455_regnum: return regnum2spr (455);
  678. case sim_ppc_spr456_regnum: return regnum2spr (456);
  679. case sim_ppc_spr457_regnum: return regnum2spr (457);
  680. case sim_ppc_spr458_regnum: return regnum2spr (458);
  681. case sim_ppc_spr459_regnum: return regnum2spr (459);
  682. case sim_ppc_spr460_regnum: return regnum2spr (460);
  683. case sim_ppc_spr461_regnum: return regnum2spr (461);
  684. case sim_ppc_spr462_regnum: return regnum2spr (462);
  685. case sim_ppc_spr463_regnum: return regnum2spr (463);
  686. case sim_ppc_spr464_regnum: return regnum2spr (464);
  687. case sim_ppc_spr465_regnum: return regnum2spr (465);
  688. case sim_ppc_spr466_regnum: return regnum2spr (466);
  689. case sim_ppc_spr467_regnum: return regnum2spr (467);
  690. case sim_ppc_spr468_regnum: return regnum2spr (468);
  691. case sim_ppc_spr469_regnum: return regnum2spr (469);
  692. case sim_ppc_spr470_regnum: return regnum2spr (470);
  693. case sim_ppc_spr471_regnum: return regnum2spr (471);
  694. case sim_ppc_spr472_regnum: return regnum2spr (472);
  695. case sim_ppc_spr473_regnum: return regnum2spr (473);
  696. case sim_ppc_spr474_regnum: return regnum2spr (474);
  697. case sim_ppc_spr475_regnum: return regnum2spr (475);
  698. case sim_ppc_spr476_regnum: return regnum2spr (476);
  699. case sim_ppc_spr477_regnum: return regnum2spr (477);
  700. case sim_ppc_spr478_regnum: return regnum2spr (478);
  701. case sim_ppc_spr479_regnum: return regnum2spr (479);
  702. case sim_ppc_spr480_regnum: return regnum2spr (480);
  703. case sim_ppc_spr481_regnum: return regnum2spr (481);
  704. case sim_ppc_spr482_regnum: return regnum2spr (482);
  705. case sim_ppc_spr483_regnum: return regnum2spr (483);
  706. case sim_ppc_spr484_regnum: return regnum2spr (484);
  707. case sim_ppc_spr485_regnum: return regnum2spr (485);
  708. case sim_ppc_spr486_regnum: return regnum2spr (486);
  709. case sim_ppc_spr487_regnum: return regnum2spr (487);
  710. case sim_ppc_spr488_regnum: return regnum2spr (488);
  711. case sim_ppc_spr489_regnum: return regnum2spr (489);
  712. case sim_ppc_spr490_regnum: return regnum2spr (490);
  713. case sim_ppc_spr491_regnum: return regnum2spr (491);
  714. case sim_ppc_spr492_regnum: return regnum2spr (492);
  715. case sim_ppc_spr493_regnum: return regnum2spr (493);
  716. case sim_ppc_spr494_regnum: return regnum2spr (494);
  717. case sim_ppc_spr495_regnum: return regnum2spr (495);
  718. case sim_ppc_spr496_regnum: return regnum2spr (496);
  719. case sim_ppc_spr497_regnum: return regnum2spr (497);
  720. case sim_ppc_spr498_regnum: return regnum2spr (498);
  721. case sim_ppc_spr499_regnum: return regnum2spr (499);
  722. case sim_ppc_spr500_regnum: return regnum2spr (500);
  723. case sim_ppc_spr501_regnum: return regnum2spr (501);
  724. case sim_ppc_spr502_regnum: return regnum2spr (502);
  725. case sim_ppc_spr503_regnum: return regnum2spr (503);
  726. case sim_ppc_spr504_regnum: return regnum2spr (504);
  727. case sim_ppc_spr505_regnum: return regnum2spr (505);
  728. case sim_ppc_spr506_regnum: return regnum2spr (506);
  729. case sim_ppc_spr507_regnum: return regnum2spr (507);
  730. case sim_ppc_spr508_regnum: return regnum2spr (508);
  731. case sim_ppc_spr509_regnum: return regnum2spr (509);
  732. case sim_ppc_spr510_regnum: return regnum2spr (510);
  733. case sim_ppc_spr511_regnum: return regnum2spr (511);
  734. case sim_ppc_spr512_regnum: return regnum2spr (512);
  735. case sim_ppc_spr513_regnum: return regnum2spr (513);
  736. case sim_ppc_spr514_regnum: return regnum2spr (514);
  737. case sim_ppc_spr515_regnum: return regnum2spr (515);
  738. case sim_ppc_spr516_regnum: return regnum2spr (516);
  739. case sim_ppc_spr517_regnum: return regnum2spr (517);
  740. case sim_ppc_spr518_regnum: return regnum2spr (518);
  741. case sim_ppc_spr519_regnum: return regnum2spr (519);
  742. case sim_ppc_spr520_regnum: return regnum2spr (520);
  743. case sim_ppc_spr521_regnum: return regnum2spr (521);
  744. case sim_ppc_spr522_regnum: return regnum2spr (522);
  745. case sim_ppc_spr523_regnum: return regnum2spr (523);
  746. case sim_ppc_spr524_regnum: return regnum2spr (524);
  747. case sim_ppc_spr525_regnum: return regnum2spr (525);
  748. case sim_ppc_spr526_regnum: return regnum2spr (526);
  749. case sim_ppc_spr527_regnum: return regnum2spr (527);
  750. case sim_ppc_spr528_regnum: return regnum2spr (528);
  751. case sim_ppc_spr529_regnum: return regnum2spr (529);
  752. case sim_ppc_spr530_regnum: return regnum2spr (530);
  753. case sim_ppc_spr531_regnum: return regnum2spr (531);
  754. case sim_ppc_spr532_regnum: return regnum2spr (532);
  755. case sim_ppc_spr533_regnum: return regnum2spr (533);
  756. case sim_ppc_spr534_regnum: return regnum2spr (534);
  757. case sim_ppc_spr535_regnum: return regnum2spr (535);
  758. case sim_ppc_spr536_regnum: return regnum2spr (536);
  759. case sim_ppc_spr537_regnum: return regnum2spr (537);
  760. case sim_ppc_spr538_regnum: return regnum2spr (538);
  761. case sim_ppc_spr539_regnum: return regnum2spr (539);
  762. case sim_ppc_spr540_regnum: return regnum2spr (540);
  763. case sim_ppc_spr541_regnum: return regnum2spr (541);
  764. case sim_ppc_spr542_regnum: return regnum2spr (542);
  765. case sim_ppc_spr543_regnum: return regnum2spr (543);
  766. case sim_ppc_spr544_regnum: return regnum2spr (544);
  767. case sim_ppc_spr545_regnum: return regnum2spr (545);
  768. case sim_ppc_spr546_regnum: return regnum2spr (546);
  769. case sim_ppc_spr547_regnum: return regnum2spr (547);
  770. case sim_ppc_spr548_regnum: return regnum2spr (548);
  771. case sim_ppc_spr549_regnum: return regnum2spr (549);
  772. case sim_ppc_spr550_regnum: return regnum2spr (550);
  773. case sim_ppc_spr551_regnum: return regnum2spr (551);
  774. case sim_ppc_spr552_regnum: return regnum2spr (552);
  775. case sim_ppc_spr553_regnum: return regnum2spr (553);
  776. case sim_ppc_spr554_regnum: return regnum2spr (554);
  777. case sim_ppc_spr555_regnum: return regnum2spr (555);
  778. case sim_ppc_spr556_regnum: return regnum2spr (556);
  779. case sim_ppc_spr557_regnum: return regnum2spr (557);
  780. case sim_ppc_spr558_regnum: return regnum2spr (558);
  781. case sim_ppc_spr559_regnum: return regnum2spr (559);
  782. case sim_ppc_spr560_regnum: return regnum2spr (560);
  783. case sim_ppc_spr561_regnum: return regnum2spr (561);
  784. case sim_ppc_spr562_regnum: return regnum2spr (562);
  785. case sim_ppc_spr563_regnum: return regnum2spr (563);
  786. case sim_ppc_spr564_regnum: return regnum2spr (564);
  787. case sim_ppc_spr565_regnum: return regnum2spr (565);
  788. case sim_ppc_spr566_regnum: return regnum2spr (566);
  789. case sim_ppc_spr567_regnum: return regnum2spr (567);
  790. case sim_ppc_spr568_regnum: return regnum2spr (568);
  791. case sim_ppc_spr569_regnum: return regnum2spr (569);
  792. case sim_ppc_spr570_regnum: return regnum2spr (570);
  793. case sim_ppc_spr571_regnum: return regnum2spr (571);
  794. case sim_ppc_spr572_regnum: return regnum2spr (572);
  795. case sim_ppc_spr573_regnum: return regnum2spr (573);
  796. case sim_ppc_spr574_regnum: return regnum2spr (574);
  797. case sim_ppc_spr575_regnum: return regnum2spr (575);
  798. case sim_ppc_spr576_regnum: return regnum2spr (576);
  799. case sim_ppc_spr577_regnum: return regnum2spr (577);
  800. case sim_ppc_spr578_regnum: return regnum2spr (578);
  801. case sim_ppc_spr579_regnum: return regnum2spr (579);
  802. case sim_ppc_spr580_regnum: return regnum2spr (580);
  803. case sim_ppc_spr581_regnum: return regnum2spr (581);
  804. case sim_ppc_spr582_regnum: return regnum2spr (582);
  805. case sim_ppc_spr583_regnum: return regnum2spr (583);
  806. case sim_ppc_spr584_regnum: return regnum2spr (584);
  807. case sim_ppc_spr585_regnum: return regnum2spr (585);
  808. case sim_ppc_spr586_regnum: return regnum2spr (586);
  809. case sim_ppc_spr587_regnum: return regnum2spr (587);
  810. case sim_ppc_spr588_regnum: return regnum2spr (588);
  811. case sim_ppc_spr589_regnum: return regnum2spr (589);
  812. case sim_ppc_spr590_regnum: return regnum2spr (590);
  813. case sim_ppc_spr591_regnum: return regnum2spr (591);
  814. case sim_ppc_spr592_regnum: return regnum2spr (592);
  815. case sim_ppc_spr593_regnum: return regnum2spr (593);
  816. case sim_ppc_spr594_regnum: return regnum2spr (594);
  817. case sim_ppc_spr595_regnum: return regnum2spr (595);
  818. case sim_ppc_spr596_regnum: return regnum2spr (596);
  819. case sim_ppc_spr597_regnum: return regnum2spr (597);
  820. case sim_ppc_spr598_regnum: return regnum2spr (598);
  821. case sim_ppc_spr599_regnum: return regnum2spr (599);
  822. case sim_ppc_spr600_regnum: return regnum2spr (600);
  823. case sim_ppc_spr601_regnum: return regnum2spr (601);
  824. case sim_ppc_spr602_regnum: return regnum2spr (602);
  825. case sim_ppc_spr603_regnum: return regnum2spr (603);
  826. case sim_ppc_spr604_regnum: return regnum2spr (604);
  827. case sim_ppc_spr605_regnum: return regnum2spr (605);
  828. case sim_ppc_spr606_regnum: return regnum2spr (606);
  829. case sim_ppc_spr607_regnum: return regnum2spr (607);
  830. case sim_ppc_spr608_regnum: return regnum2spr (608);
  831. case sim_ppc_spr609_regnum: return regnum2spr (609);
  832. case sim_ppc_spr610_regnum: return regnum2spr (610);
  833. case sim_ppc_spr611_regnum: return regnum2spr (611);
  834. case sim_ppc_spr612_regnum: return regnum2spr (612);
  835. case sim_ppc_spr613_regnum: return regnum2spr (613);
  836. case sim_ppc_spr614_regnum: return regnum2spr (614);
  837. case sim_ppc_spr615_regnum: return regnum2spr (615);
  838. case sim_ppc_spr616_regnum: return regnum2spr (616);
  839. case sim_ppc_spr617_regnum: return regnum2spr (617);
  840. case sim_ppc_spr618_regnum: return regnum2spr (618);
  841. case sim_ppc_spr619_regnum: return regnum2spr (619);
  842. case sim_ppc_spr620_regnum: return regnum2spr (620);
  843. case sim_ppc_spr621_regnum: return regnum2spr (621);
  844. case sim_ppc_spr622_regnum: return regnum2spr (622);
  845. case sim_ppc_spr623_regnum: return regnum2spr (623);
  846. case sim_ppc_spr624_regnum: return regnum2spr (624);
  847. case sim_ppc_spr625_regnum: return regnum2spr (625);
  848. case sim_ppc_spr626_regnum: return regnum2spr (626);
  849. case sim_ppc_spr627_regnum: return regnum2spr (627);
  850. case sim_ppc_spr628_regnum: return regnum2spr (628);
  851. case sim_ppc_spr629_regnum: return regnum2spr (629);
  852. case sim_ppc_spr630_regnum: return regnum2spr (630);
  853. case sim_ppc_spr631_regnum: return regnum2spr (631);
  854. case sim_ppc_spr632_regnum: return regnum2spr (632);
  855. case sim_ppc_spr633_regnum: return regnum2spr (633);
  856. case sim_ppc_spr634_regnum: return regnum2spr (634);
  857. case sim_ppc_spr635_regnum: return regnum2spr (635);
  858. case sim_ppc_spr636_regnum: return regnum2spr (636);
  859. case sim_ppc_spr637_regnum: return regnum2spr (637);
  860. case sim_ppc_spr638_regnum: return regnum2spr (638);
  861. case sim_ppc_spr639_regnum: return regnum2spr (639);
  862. case sim_ppc_spr640_regnum: return regnum2spr (640);
  863. case sim_ppc_spr641_regnum: return regnum2spr (641);
  864. case sim_ppc_spr642_regnum: return regnum2spr (642);
  865. case sim_ppc_spr643_regnum: return regnum2spr (643);
  866. case sim_ppc_spr644_regnum: return regnum2spr (644);
  867. case sim_ppc_spr645_regnum: return regnum2spr (645);
  868. case sim_ppc_spr646_regnum: return regnum2spr (646);
  869. case sim_ppc_spr647_regnum: return regnum2spr (647);
  870. case sim_ppc_spr648_regnum: return regnum2spr (648);
  871. case sim_ppc_spr649_regnum: return regnum2spr (649);
  872. case sim_ppc_spr650_regnum: return regnum2spr (650);
  873. case sim_ppc_spr651_regnum: return regnum2spr (651);
  874. case sim_ppc_spr652_regnum: return regnum2spr (652);
  875. case sim_ppc_spr653_regnum: return regnum2spr (653);
  876. case sim_ppc_spr654_regnum: return regnum2spr (654);
  877. case sim_ppc_spr655_regnum: return regnum2spr (655);
  878. case sim_ppc_spr656_regnum: return regnum2spr (656);
  879. case sim_ppc_spr657_regnum: return regnum2spr (657);
  880. case sim_ppc_spr658_regnum: return regnum2spr (658);
  881. case sim_ppc_spr659_regnum: return regnum2spr (659);
  882. case sim_ppc_spr660_regnum: return regnum2spr (660);
  883. case sim_ppc_spr661_regnum: return regnum2spr (661);
  884. case sim_ppc_spr662_regnum: return regnum2spr (662);
  885. case sim_ppc_spr663_regnum: return regnum2spr (663);
  886. case sim_ppc_spr664_regnum: return regnum2spr (664);
  887. case sim_ppc_spr665_regnum: return regnum2spr (665);
  888. case sim_ppc_spr666_regnum: return regnum2spr (666);
  889. case sim_ppc_spr667_regnum: return regnum2spr (667);
  890. case sim_ppc_spr668_regnum: return regnum2spr (668);
  891. case sim_ppc_spr669_regnum: return regnum2spr (669);
  892. case sim_ppc_spr670_regnum: return regnum2spr (670);
  893. case sim_ppc_spr671_regnum: return regnum2spr (671);
  894. case sim_ppc_spr672_regnum: return regnum2spr (672);
  895. case sim_ppc_spr673_regnum: return regnum2spr (673);
  896. case sim_ppc_spr674_regnum: return regnum2spr (674);
  897. case sim_ppc_spr675_regnum: return regnum2spr (675);
  898. case sim_ppc_spr676_regnum: return regnum2spr (676);
  899. case sim_ppc_spr677_regnum: return regnum2spr (677);
  900. case sim_ppc_spr678_regnum: return regnum2spr (678);
  901. case sim_ppc_spr679_regnum: return regnum2spr (679);
  902. case sim_ppc_spr680_regnum: return regnum2spr (680);
  903. case sim_ppc_spr681_regnum: return regnum2spr (681);
  904. case sim_ppc_spr682_regnum: return regnum2spr (682);
  905. case sim_ppc_spr683_regnum: return regnum2spr (683);
  906. case sim_ppc_spr684_regnum: return regnum2spr (684);
  907. case sim_ppc_spr685_regnum: return regnum2spr (685);
  908. case sim_ppc_spr686_regnum: return regnum2spr (686);
  909. case sim_ppc_spr687_regnum: return regnum2spr (687);
  910. case sim_ppc_spr688_regnum: return regnum2spr (688);
  911. case sim_ppc_spr689_regnum: return regnum2spr (689);
  912. case sim_ppc_spr690_regnum: return regnum2spr (690);
  913. case sim_ppc_spr691_regnum: return regnum2spr (691);
  914. case sim_ppc_spr692_regnum: return regnum2spr (692);
  915. case sim_ppc_spr693_regnum: return regnum2spr (693);
  916. case sim_ppc_spr694_regnum: return regnum2spr (694);
  917. case sim_ppc_spr695_regnum: return regnum2spr (695);
  918. case sim_ppc_spr696_regnum: return regnum2spr (696);
  919. case sim_ppc_spr697_regnum: return regnum2spr (697);
  920. case sim_ppc_spr698_regnum: return regnum2spr (698);
  921. case sim_ppc_spr699_regnum: return regnum2spr (699);
  922. case sim_ppc_spr700_regnum: return regnum2spr (700);
  923. case sim_ppc_spr701_regnum: return regnum2spr (701);
  924. case sim_ppc_spr702_regnum: return regnum2spr (702);
  925. case sim_ppc_spr703_regnum: return regnum2spr (703);
  926. case sim_ppc_spr704_regnum: return regnum2spr (704);
  927. case sim_ppc_spr705_regnum: return regnum2spr (705);
  928. case sim_ppc_spr706_regnum: return regnum2spr (706);
  929. case sim_ppc_spr707_regnum: return regnum2spr (707);
  930. case sim_ppc_spr708_regnum: return regnum2spr (708);
  931. case sim_ppc_spr709_regnum: return regnum2spr (709);
  932. case sim_ppc_spr710_regnum: return regnum2spr (710);
  933. case sim_ppc_spr711_regnum: return regnum2spr (711);
  934. case sim_ppc_spr712_regnum: return regnum2spr (712);
  935. case sim_ppc_spr713_regnum: return regnum2spr (713);
  936. case sim_ppc_spr714_regnum: return regnum2spr (714);
  937. case sim_ppc_spr715_regnum: return regnum2spr (715);
  938. case sim_ppc_spr716_regnum: return regnum2spr (716);
  939. case sim_ppc_spr717_regnum: return regnum2spr (717);
  940. case sim_ppc_spr718_regnum: return regnum2spr (718);
  941. case sim_ppc_spr719_regnum: return regnum2spr (719);
  942. case sim_ppc_spr720_regnum: return regnum2spr (720);
  943. case sim_ppc_spr721_regnum: return regnum2spr (721);
  944. case sim_ppc_spr722_regnum: return regnum2spr (722);
  945. case sim_ppc_spr723_regnum: return regnum2spr (723);
  946. case sim_ppc_spr724_regnum: return regnum2spr (724);
  947. case sim_ppc_spr725_regnum: return regnum2spr (725);
  948. case sim_ppc_spr726_regnum: return regnum2spr (726);
  949. case sim_ppc_spr727_regnum: return regnum2spr (727);
  950. case sim_ppc_spr728_regnum: return regnum2spr (728);
  951. case sim_ppc_spr729_regnum: return regnum2spr (729);
  952. case sim_ppc_spr730_regnum: return regnum2spr (730);
  953. case sim_ppc_spr731_regnum: return regnum2spr (731);
  954. case sim_ppc_spr732_regnum: return regnum2spr (732);
  955. case sim_ppc_spr733_regnum: return regnum2spr (733);
  956. case sim_ppc_spr734_regnum: return regnum2spr (734);
  957. case sim_ppc_spr735_regnum: return regnum2spr (735);
  958. case sim_ppc_spr736_regnum: return regnum2spr (736);
  959. case sim_ppc_spr737_regnum: return regnum2spr (737);
  960. case sim_ppc_spr738_regnum: return regnum2spr (738);
  961. case sim_ppc_spr739_regnum: return regnum2spr (739);
  962. case sim_ppc_spr740_regnum: return regnum2spr (740);
  963. case sim_ppc_spr741_regnum: return regnum2spr (741);
  964. case sim_ppc_spr742_regnum: return regnum2spr (742);
  965. case sim_ppc_spr743_regnum: return regnum2spr (743);
  966. case sim_ppc_spr744_regnum: return regnum2spr (744);
  967. case sim_ppc_spr745_regnum: return regnum2spr (745);
  968. case sim_ppc_spr746_regnum: return regnum2spr (746);
  969. case sim_ppc_spr747_regnum: return regnum2spr (747);
  970. case sim_ppc_spr748_regnum: return regnum2spr (748);
  971. case sim_ppc_spr749_regnum: return regnum2spr (749);
  972. case sim_ppc_spr750_regnum: return regnum2spr (750);
  973. case sim_ppc_spr751_regnum: return regnum2spr (751);
  974. case sim_ppc_spr752_regnum: return regnum2spr (752);
  975. case sim_ppc_spr753_regnum: return regnum2spr (753);
  976. case sim_ppc_spr754_regnum: return regnum2spr (754);
  977. case sim_ppc_spr755_regnum: return regnum2spr (755);
  978. case sim_ppc_spr756_regnum: return regnum2spr (756);
  979. case sim_ppc_spr757_regnum: return regnum2spr (757);
  980. case sim_ppc_spr758_regnum: return regnum2spr (758);
  981. case sim_ppc_spr759_regnum: return regnum2spr (759);
  982. case sim_ppc_spr760_regnum: return regnum2spr (760);
  983. case sim_ppc_spr761_regnum: return regnum2spr (761);
  984. case sim_ppc_spr762_regnum: return regnum2spr (762);
  985. case sim_ppc_spr763_regnum: return regnum2spr (763);
  986. case sim_ppc_spr764_regnum: return regnum2spr (764);
  987. case sim_ppc_spr765_regnum: return regnum2spr (765);
  988. case sim_ppc_spr766_regnum: return regnum2spr (766);
  989. case sim_ppc_spr767_regnum: return regnum2spr (767);
  990. case sim_ppc_spr768_regnum: return regnum2spr (768);
  991. case sim_ppc_spr769_regnum: return regnum2spr (769);
  992. case sim_ppc_spr770_regnum: return regnum2spr (770);
  993. case sim_ppc_spr771_regnum: return regnum2spr (771);
  994. case sim_ppc_spr772_regnum: return regnum2spr (772);
  995. case sim_ppc_spr773_regnum: return regnum2spr (773);
  996. case sim_ppc_spr774_regnum: return regnum2spr (774);
  997. case sim_ppc_spr775_regnum: return regnum2spr (775);
  998. case sim_ppc_spr776_regnum: return regnum2spr (776);
  999. case sim_ppc_spr777_regnum: return regnum2spr (777);
  1000. case sim_ppc_spr778_regnum: return regnum2spr (778);
  1001. case sim_ppc_spr779_regnum: return regnum2spr (779);
  1002. case sim_ppc_spr780_regnum: return regnum2spr (780);
  1003. case sim_ppc_spr781_regnum: return regnum2spr (781);
  1004. case sim_ppc_spr782_regnum: return regnum2spr (782);
  1005. case sim_ppc_spr783_regnum: return regnum2spr (783);
  1006. case sim_ppc_spr784_regnum: return regnum2spr (784);
  1007. case sim_ppc_spr785_regnum: return regnum2spr (785);
  1008. case sim_ppc_spr786_regnum: return regnum2spr (786);
  1009. case sim_ppc_spr787_regnum: return regnum2spr (787);
  1010. case sim_ppc_spr788_regnum: return regnum2spr (788);
  1011. case sim_ppc_spr789_regnum: return regnum2spr (789);
  1012. case sim_ppc_spr790_regnum: return regnum2spr (790);
  1013. case sim_ppc_spr791_regnum: return regnum2spr (791);
  1014. case sim_ppc_spr792_regnum: return regnum2spr (792);
  1015. case sim_ppc_spr793_regnum: return regnum2spr (793);
  1016. case sim_ppc_spr794_regnum: return regnum2spr (794);
  1017. case sim_ppc_spr795_regnum: return regnum2spr (795);
  1018. case sim_ppc_spr796_regnum: return regnum2spr (796);
  1019. case sim_ppc_spr797_regnum: return regnum2spr (797);
  1020. case sim_ppc_spr798_regnum: return regnum2spr (798);
  1021. case sim_ppc_spr799_regnum: return regnum2spr (799);
  1022. case sim_ppc_spr800_regnum: return regnum2spr (800);
  1023. case sim_ppc_spr801_regnum: return regnum2spr (801);
  1024. case sim_ppc_spr802_regnum: return regnum2spr (802);
  1025. case sim_ppc_spr803_regnum: return regnum2spr (803);
  1026. case sim_ppc_spr804_regnum: return regnum2spr (804);
  1027. case sim_ppc_spr805_regnum: return regnum2spr (805);
  1028. case sim_ppc_spr806_regnum: return regnum2spr (806);
  1029. case sim_ppc_spr807_regnum: return regnum2spr (807);
  1030. case sim_ppc_spr808_regnum: return regnum2spr (808);
  1031. case sim_ppc_spr809_regnum: return regnum2spr (809);
  1032. case sim_ppc_spr810_regnum: return regnum2spr (810);
  1033. case sim_ppc_spr811_regnum: return regnum2spr (811);
  1034. case sim_ppc_spr812_regnum: return regnum2spr (812);
  1035. case sim_ppc_spr813_regnum: return regnum2spr (813);
  1036. case sim_ppc_spr814_regnum: return regnum2spr (814);
  1037. case sim_ppc_spr815_regnum: return regnum2spr (815);
  1038. case sim_ppc_spr816_regnum: return regnum2spr (816);
  1039. case sim_ppc_spr817_regnum: return regnum2spr (817);
  1040. case sim_ppc_spr818_regnum: return regnum2spr (818);
  1041. case sim_ppc_spr819_regnum: return regnum2spr (819);
  1042. case sim_ppc_spr820_regnum: return regnum2spr (820);
  1043. case sim_ppc_spr821_regnum: return regnum2spr (821);
  1044. case sim_ppc_spr822_regnum: return regnum2spr (822);
  1045. case sim_ppc_spr823_regnum: return regnum2spr (823);
  1046. case sim_ppc_spr824_regnum: return regnum2spr (824);
  1047. case sim_ppc_spr825_regnum: return regnum2spr (825);
  1048. case sim_ppc_spr826_regnum: return regnum2spr (826);
  1049. case sim_ppc_spr827_regnum: return regnum2spr (827);
  1050. case sim_ppc_spr828_regnum: return regnum2spr (828);
  1051. case sim_ppc_spr829_regnum: return regnum2spr (829);
  1052. case sim_ppc_spr830_regnum: return regnum2spr (830);
  1053. case sim_ppc_spr831_regnum: return regnum2spr (831);
  1054. case sim_ppc_spr832_regnum: return regnum2spr (832);
  1055. case sim_ppc_spr833_regnum: return regnum2spr (833);
  1056. case sim_ppc_spr834_regnum: return regnum2spr (834);
  1057. case sim_ppc_spr835_regnum: return regnum2spr (835);
  1058. case sim_ppc_spr836_regnum: return regnum2spr (836);
  1059. case sim_ppc_spr837_regnum: return regnum2spr (837);
  1060. case sim_ppc_spr838_regnum: return regnum2spr (838);
  1061. case sim_ppc_spr839_regnum: return regnum2spr (839);
  1062. case sim_ppc_spr840_regnum: return regnum2spr (840);
  1063. case sim_ppc_spr841_regnum: return regnum2spr (841);
  1064. case sim_ppc_spr842_regnum: return regnum2spr (842);
  1065. case sim_ppc_spr843_regnum: return regnum2spr (843);
  1066. case sim_ppc_spr844_regnum: return regnum2spr (844);
  1067. case sim_ppc_spr845_regnum: return regnum2spr (845);
  1068. case sim_ppc_spr846_regnum: return regnum2spr (846);
  1069. case sim_ppc_spr847_regnum: return regnum2spr (847);
  1070. case sim_ppc_spr848_regnum: return regnum2spr (848);
  1071. case sim_ppc_spr849_regnum: return regnum2spr (849);
  1072. case sim_ppc_spr850_regnum: return regnum2spr (850);
  1073. case sim_ppc_spr851_regnum: return regnum2spr (851);
  1074. case sim_ppc_spr852_regnum: return regnum2spr (852);
  1075. case sim_ppc_spr853_regnum: return regnum2spr (853);
  1076. case sim_ppc_spr854_regnum: return regnum2spr (854);
  1077. case sim_ppc_spr855_regnum: return regnum2spr (855);
  1078. case sim_ppc_spr856_regnum: return regnum2spr (856);
  1079. case sim_ppc_spr857_regnum: return regnum2spr (857);
  1080. case sim_ppc_spr858_regnum: return regnum2spr (858);
  1081. case sim_ppc_spr859_regnum: return regnum2spr (859);
  1082. case sim_ppc_spr860_regnum: return regnum2spr (860);
  1083. case sim_ppc_spr861_regnum: return regnum2spr (861);
  1084. case sim_ppc_spr862_regnum: return regnum2spr (862);
  1085. case sim_ppc_spr863_regnum: return regnum2spr (863);
  1086. case sim_ppc_spr864_regnum: return regnum2spr (864);
  1087. case sim_ppc_spr865_regnum: return regnum2spr (865);
  1088. case sim_ppc_spr866_regnum: return regnum2spr (866);
  1089. case sim_ppc_spr867_regnum: return regnum2spr (867);
  1090. case sim_ppc_spr868_regnum: return regnum2spr (868);
  1091. case sim_ppc_spr869_regnum: return regnum2spr (869);
  1092. case sim_ppc_spr870_regnum: return regnum2spr (870);
  1093. case sim_ppc_spr871_regnum: return regnum2spr (871);
  1094. case sim_ppc_spr872_regnum: return regnum2spr (872);
  1095. case sim_ppc_spr873_regnum: return regnum2spr (873);
  1096. case sim_ppc_spr874_regnum: return regnum2spr (874);
  1097. case sim_ppc_spr875_regnum: return regnum2spr (875);
  1098. case sim_ppc_spr876_regnum: return regnum2spr (876);
  1099. case sim_ppc_spr877_regnum: return regnum2spr (877);
  1100. case sim_ppc_spr878_regnum: return regnum2spr (878);
  1101. case sim_ppc_spr879_regnum: return regnum2spr (879);
  1102. case sim_ppc_spr880_regnum: return regnum2spr (880);
  1103. case sim_ppc_spr881_regnum: return regnum2spr (881);
  1104. case sim_ppc_spr882_regnum: return regnum2spr (882);
  1105. case sim_ppc_spr883_regnum: return regnum2spr (883);
  1106. case sim_ppc_spr884_regnum: return regnum2spr (884);
  1107. case sim_ppc_spr885_regnum: return regnum2spr (885);
  1108. case sim_ppc_spr886_regnum: return regnum2spr (886);
  1109. case sim_ppc_spr887_regnum: return regnum2spr (887);
  1110. case sim_ppc_spr888_regnum: return regnum2spr (888);
  1111. case sim_ppc_spr889_regnum: return regnum2spr (889);
  1112. case sim_ppc_spr890_regnum: return regnum2spr (890);
  1113. case sim_ppc_spr891_regnum: return regnum2spr (891);
  1114. case sim_ppc_spr892_regnum: return regnum2spr (892);
  1115. case sim_ppc_spr893_regnum: return regnum2spr (893);
  1116. case sim_ppc_spr894_regnum: return regnum2spr (894);
  1117. case sim_ppc_spr895_regnum: return regnum2spr (895);
  1118. case sim_ppc_spr896_regnum: return regnum2spr (896);
  1119. case sim_ppc_spr897_regnum: return regnum2spr (897);
  1120. case sim_ppc_spr898_regnum: return regnum2spr (898);
  1121. case sim_ppc_spr899_regnum: return regnum2spr (899);
  1122. case sim_ppc_spr900_regnum: return regnum2spr (900);
  1123. case sim_ppc_spr901_regnum: return regnum2spr (901);
  1124. case sim_ppc_spr902_regnum: return regnum2spr (902);
  1125. case sim_ppc_spr903_regnum: return regnum2spr (903);
  1126. case sim_ppc_spr904_regnum: return regnum2spr (904);
  1127. case sim_ppc_spr905_regnum: return regnum2spr (905);
  1128. case sim_ppc_spr906_regnum: return regnum2spr (906);
  1129. case sim_ppc_spr907_regnum: return regnum2spr (907);
  1130. case sim_ppc_spr908_regnum: return regnum2spr (908);
  1131. case sim_ppc_spr909_regnum: return regnum2spr (909);
  1132. case sim_ppc_spr910_regnum: return regnum2spr (910);
  1133. case sim_ppc_spr911_regnum: return regnum2spr (911);
  1134. case sim_ppc_spr912_regnum: return regnum2spr (912);
  1135. case sim_ppc_spr913_regnum: return regnum2spr (913);
  1136. case sim_ppc_spr914_regnum: return regnum2spr (914);
  1137. case sim_ppc_spr915_regnum: return regnum2spr (915);
  1138. case sim_ppc_spr916_regnum: return regnum2spr (916);
  1139. case sim_ppc_spr917_regnum: return regnum2spr (917);
  1140. case sim_ppc_spr918_regnum: return regnum2spr (918);
  1141. case sim_ppc_spr919_regnum: return regnum2spr (919);
  1142. case sim_ppc_spr920_regnum: return regnum2spr (920);
  1143. case sim_ppc_spr921_regnum: return regnum2spr (921);
  1144. case sim_ppc_spr922_regnum: return regnum2spr (922);
  1145. case sim_ppc_spr923_regnum: return regnum2spr (923);
  1146. case sim_ppc_spr924_regnum: return regnum2spr (924);
  1147. case sim_ppc_spr925_regnum: return regnum2spr (925);
  1148. case sim_ppc_spr926_regnum: return regnum2spr (926);
  1149. case sim_ppc_spr927_regnum: return regnum2spr (927);
  1150. case sim_ppc_spr928_regnum: return regnum2spr (928);
  1151. case sim_ppc_spr929_regnum: return regnum2spr (929);
  1152. case sim_ppc_spr930_regnum: return regnum2spr (930);
  1153. case sim_ppc_spr931_regnum: return regnum2spr (931);
  1154. case sim_ppc_spr932_regnum: return regnum2spr (932);
  1155. case sim_ppc_spr933_regnum: return regnum2spr (933);
  1156. case sim_ppc_spr934_regnum: return regnum2spr (934);
  1157. case sim_ppc_spr935_regnum: return regnum2spr (935);
  1158. case sim_ppc_spr936_regnum: return regnum2spr (936);
  1159. case sim_ppc_spr937_regnum: return regnum2spr (937);
  1160. case sim_ppc_spr938_regnum: return regnum2spr (938);
  1161. case sim_ppc_spr939_regnum: return regnum2spr (939);
  1162. case sim_ppc_spr940_regnum: return regnum2spr (940);
  1163. case sim_ppc_spr941_regnum: return regnum2spr (941);
  1164. case sim_ppc_spr942_regnum: return regnum2spr (942);
  1165. case sim_ppc_spr943_regnum: return regnum2spr (943);
  1166. case sim_ppc_spr944_regnum: return regnum2spr (944);
  1167. case sim_ppc_spr945_regnum: return regnum2spr (945);
  1168. case sim_ppc_spr946_regnum: return regnum2spr (946);
  1169. case sim_ppc_spr947_regnum: return regnum2spr (947);
  1170. case sim_ppc_spr948_regnum: return regnum2spr (948);
  1171. case sim_ppc_spr949_regnum: return regnum2spr (949);
  1172. case sim_ppc_spr950_regnum: return regnum2spr (950);
  1173. case sim_ppc_spr951_regnum: return regnum2spr (951);
  1174. case sim_ppc_spr952_regnum: return regnum2spr (952);
  1175. case sim_ppc_spr953_regnum: return regnum2spr (953);
  1176. case sim_ppc_spr954_regnum: return regnum2spr (954);
  1177. case sim_ppc_spr955_regnum: return regnum2spr (955);
  1178. case sim_ppc_spr956_regnum: return regnum2spr (956);
  1179. case sim_ppc_spr957_regnum: return regnum2spr (957);
  1180. case sim_ppc_spr958_regnum: return regnum2spr (958);
  1181. case sim_ppc_spr959_regnum: return regnum2spr (959);
  1182. case sim_ppc_spr960_regnum: return regnum2spr (960);
  1183. case sim_ppc_spr961_regnum: return regnum2spr (961);
  1184. case sim_ppc_spr962_regnum: return regnum2spr (962);
  1185. case sim_ppc_spr963_regnum: return regnum2spr (963);
  1186. case sim_ppc_spr964_regnum: return regnum2spr (964);
  1187. case sim_ppc_spr965_regnum: return regnum2spr (965);
  1188. case sim_ppc_spr966_regnum: return regnum2spr (966);
  1189. case sim_ppc_spr967_regnum: return regnum2spr (967);
  1190. case sim_ppc_spr968_regnum: return regnum2spr (968);
  1191. case sim_ppc_spr969_regnum: return regnum2spr (969);
  1192. case sim_ppc_spr970_regnum: return regnum2spr (970);
  1193. case sim_ppc_spr971_regnum: return regnum2spr (971);
  1194. case sim_ppc_spr972_regnum: return regnum2spr (972);
  1195. case sim_ppc_spr973_regnum: return regnum2spr (973);
  1196. case sim_ppc_spr974_regnum: return regnum2spr (974);
  1197. case sim_ppc_spr975_regnum: return regnum2spr (975);
  1198. case sim_ppc_spr976_regnum: return regnum2spr (976);
  1199. case sim_ppc_spr977_regnum: return regnum2spr (977);
  1200. case sim_ppc_spr978_regnum: return regnum2spr (978);
  1201. case sim_ppc_spr979_regnum: return regnum2spr (979);
  1202. case sim_ppc_spr980_regnum: return regnum2spr (980);
  1203. case sim_ppc_spr981_regnum: return regnum2spr (981);
  1204. case sim_ppc_spr982_regnum: return regnum2spr (982);
  1205. case sim_ppc_spr983_regnum: return regnum2spr (983);
  1206. case sim_ppc_spr984_regnum: return regnum2spr (984);
  1207. case sim_ppc_spr985_regnum: return regnum2spr (985);
  1208. case sim_ppc_spr986_regnum: return regnum2spr (986);
  1209. case sim_ppc_spr987_regnum: return regnum2spr (987);
  1210. case sim_ppc_spr988_regnum: return regnum2spr (988);
  1211. case sim_ppc_spr989_regnum: return regnum2spr (989);
  1212. case sim_ppc_spr990_regnum: return regnum2spr (990);
  1213. case sim_ppc_spr991_regnum: return regnum2spr (991);
  1214. case sim_ppc_spr992_regnum: return regnum2spr (992);
  1215. case sim_ppc_spr993_regnum: return regnum2spr (993);
  1216. case sim_ppc_spr994_regnum: return regnum2spr (994);
  1217. case sim_ppc_spr995_regnum: return regnum2spr (995);
  1218. case sim_ppc_spr996_regnum: return regnum2spr (996);
  1219. case sim_ppc_spr997_regnum: return regnum2spr (997);
  1220. case sim_ppc_spr998_regnum: return regnum2spr (998);
  1221. case sim_ppc_spr999_regnum: return regnum2spr (999);
  1222. case sim_ppc_spr1000_regnum: return regnum2spr (1000);
  1223. case sim_ppc_spr1001_regnum: return regnum2spr (1001);
  1224. case sim_ppc_spr1002_regnum: return regnum2spr (1002);
  1225. case sim_ppc_spr1003_regnum: return regnum2spr (1003);
  1226. case sim_ppc_spr1004_regnum: return regnum2spr (1004);
  1227. case sim_ppc_spr1005_regnum: return regnum2spr (1005);
  1228. case sim_ppc_spr1006_regnum: return regnum2spr (1006);
  1229. case sim_ppc_spr1007_regnum: return regnum2spr (1007);
  1230. case sim_ppc_spr1008_regnum: return regnum2spr (1008);
  1231. case sim_ppc_spr1009_regnum: return regnum2spr (1009);
  1232. case sim_ppc_spr1010_regnum: return regnum2spr (1010);
  1233. case sim_ppc_spr1011_regnum: return regnum2spr (1011);
  1234. case sim_ppc_spr1012_regnum: return regnum2spr (1012);
  1235. case sim_ppc_spr1013_regnum: return regnum2spr (1013);
  1236. case sim_ppc_spr1014_regnum: return regnum2spr (1014);
  1237. case sim_ppc_spr1015_regnum: return regnum2spr (1015);
  1238. case sim_ppc_spr1016_regnum: return regnum2spr (1016);
  1239. case sim_ppc_spr1017_regnum: return regnum2spr (1017);
  1240. case sim_ppc_spr1018_regnum: return regnum2spr (1018);
  1241. case sim_ppc_spr1019_regnum: return regnum2spr (1019);
  1242. case sim_ppc_spr1020_regnum: return regnum2spr (1020);
  1243. case sim_ppc_spr1021_regnum: return regnum2spr (1021);
  1244. case sim_ppc_spr1022_regnum: return regnum2spr (1022);
  1245. case sim_ppc_spr1023_regnum: return regnum2spr (1023);
  1246. default:
  1247. /* Not a valid register number at all. */
  1248. return NULL;
  1249. }
  1250. }
  1251. int
  1252. sim_fetch_register (SIM_DESC sd, int regno, unsigned char *buf, int length)
  1253. {
  1254. const char *regname = regnum2name (regno);
  1255. if (simulator == NULL || regname == NULL)
  1256. return -1;
  1257. TRACE(trace_gdb, ("sim_fetch_register(regno=%d(%s), buf=%p)\n",
  1258. regno, regname, buf));
  1259. return psim_read_register(simulator, MAX_NR_PROCESSORS,
  1260. buf, regname, raw_transfer);
  1261. }
  1262. int
  1263. sim_store_register (SIM_DESC sd, int regno, unsigned char *buf, int length)
  1264. {
  1265. const char *regname = regnum2name (regno);
  1266. if (simulator == NULL || regname == NULL)
  1267. return 0;
  1268. TRACE(trace_gdb, ("sim_store_register(regno=%d(%s), buf=%p)\n",
  1269. regno, regname, buf));
  1270. return psim_write_register(simulator, MAX_NR_PROCESSORS,
  1271. buf, regname, raw_transfer);
  1272. }