diff options
Diffstat (limited to 'gdb/ppc-tdep.h')
-rw-r--r-- | gdb/ppc-tdep.h | 211 |
1 files changed, 24 insertions, 187 deletions
diff --git a/gdb/ppc-tdep.h b/gdb/ppc-tdep.h index 3c16973..76fcf9e 100644 --- a/gdb/ppc-tdep.h +++ b/gdb/ppc-tdep.h @@ -139,7 +139,6 @@ extern void ppc_collect_fpregset (const struct regset *regset, struct gdbarch_tdep { int wordsize; /* size in bytes of fixed-point word */ - const struct reg *regs; /* from current variant */ int ppc_gp0_regnum; /* GPR register 0 */ int ppc_toc_regnum; /* TOC register */ int ppc_ps_regnum; /* Processor (or machine) status (%msr) */ @@ -156,9 +155,6 @@ struct gdbarch_tdep int ppc_fp0_regnum; /* floating-point register 0 */ int ppc_fpscr_regnum; /* fp status and condition register */ - /* Segment registers. */ - int ppc_sr0_regnum; /* segment register 0 */ - /* Multiplier-Quotient Register (older POWER architectures only). */ int ppc_mq_regnum; @@ -186,7 +182,6 @@ struct gdbarch_tdep /* ISA-specific types. */ struct type *ppc_builtin_type_vec64; - struct type *ppc_builtin_type_vec128; }; @@ -200,189 +195,31 @@ enum }; -/* Constants for SPR register numbers. These are *not* GDB register - numbers: they are the numbers used in the PowerPC ISA itself to - refer to these registers. - - This table includes all the SPRs from all the variants I could find - documentation for. - - There may be registers from different PowerPC variants assigned the - same number, but that's fine: GDB and the SIM always use the - numbers in the context of a particular variant, so it's not - ambiguous. - - We need to deviate from the naming pattern when variants have - special-purpose registers of the same name, but with different - numbers. Fortunately, this is rare: look below to see how we - handle the 'tcr' registers on the 403/403GX and 602. */ +/* Register number constants. These are GDB internal register + numbers; they are not used for the simulator or remote targets. + Extra SPRs (those other than MQ, CTR, LR, XER, SPEFSCR) are given + numbers above PPC_NUM_REGS. So are segment registers and other + target-defined registers. */ +enum { + PPC_R0_REGNUM = 0, + PPC_F0_REGNUM = 32, + PPC_PC_REGNUM = 64, + PPC_MSR_REGNUM = 65, + PPC_CR_REGNUM = 66, + PPC_LR_REGNUM = 67, + PPC_CTR_REGNUM = 68, + PPC_XER_REGNUM = 69, + PPC_FPSCR_REGNUM = 70, + PPC_MQ_REGNUM = 71, + PPC_SPE_UPPER_GP0_REGNUM = 72, + PPC_SPE_ACC_REGNUM = 104, + PPC_SPE_FSCR_REGNUM = 105, + PPC_VR0_REGNUM = 106, + PPC_VSCR_REGNUM = 138, + PPC_VRSAVE_REGNUM = 139, + PPC_NUM_REGS +}; -enum - { - ppc_spr_mq = 0, - ppc_spr_xer = 1, - ppc_spr_rtcu = 4, - ppc_spr_rtcl = 5, - ppc_spr_lr = 8, - ppc_spr_ctr = 9, - ppc_spr_cnt = 9, - ppc_spr_dsisr = 18, - ppc_spr_dar = 19, - ppc_spr_dec = 22, - ppc_spr_sdr1 = 25, - ppc_spr_srr0 = 26, - ppc_spr_srr1 = 27, - ppc_spr_eie = 80, - ppc_spr_eid = 81, - ppc_spr_nri = 82, - ppc_spr_sp = 102, - ppc_spr_cmpa = 144, - ppc_spr_cmpb = 145, - ppc_spr_cmpc = 146, - ppc_spr_cmpd = 147, - ppc_spr_icr = 148, - ppc_spr_der = 149, - ppc_spr_counta = 150, - ppc_spr_countb = 151, - ppc_spr_cmpe = 152, - ppc_spr_cmpf = 153, - ppc_spr_cmpg = 154, - ppc_spr_cmph = 155, - ppc_spr_lctrl1 = 156, - ppc_spr_lctrl2 = 157, - ppc_spr_ictrl = 158, - ppc_spr_bar = 159, - ppc_spr_vrsave = 256, - ppc_spr_sprg0 = 272, - ppc_spr_sprg1 = 273, - ppc_spr_sprg2 = 274, - ppc_spr_sprg3 = 275, - ppc_spr_asr = 280, - ppc_spr_ear = 282, - ppc_spr_tbl = 284, - ppc_spr_tbu = 285, - ppc_spr_pvr = 287, - ppc_spr_spefscr = 512, - ppc_spr_ibat0u = 528, - ppc_spr_ibat0l = 529, - ppc_spr_ibat1u = 530, - ppc_spr_ibat1l = 531, - ppc_spr_ibat2u = 532, - ppc_spr_ibat2l = 533, - ppc_spr_ibat3u = 534, - ppc_spr_ibat3l = 535, - ppc_spr_dbat0u = 536, - ppc_spr_dbat0l = 537, - ppc_spr_dbat1u = 538, - ppc_spr_dbat1l = 539, - ppc_spr_dbat2u = 540, - ppc_spr_dbat2l = 541, - ppc_spr_dbat3u = 542, - ppc_spr_dbat3l = 543, - ppc_spr_ic_cst = 560, - ppc_spr_ic_adr = 561, - ppc_spr_ic_dat = 562, - ppc_spr_dc_cst = 568, - ppc_spr_dc_adr = 569, - ppc_spr_dc_dat = 570, - ppc_spr_dpdr = 630, - ppc_spr_dpir = 631, - ppc_spr_immr = 638, - ppc_spr_mi_ctr = 784, - ppc_spr_mi_ap = 786, - ppc_spr_mi_epn = 787, - ppc_spr_mi_twc = 789, - ppc_spr_mi_rpn = 790, - ppc_spr_mi_cam = 816, - ppc_spr_mi_ram0 = 817, - ppc_spr_mi_ram1 = 818, - ppc_spr_md_ctr = 792, - ppc_spr_m_casid = 793, - ppc_spr_md_ap = 794, - ppc_spr_md_epn = 795, - ppc_spr_m_twb = 796, - ppc_spr_md_twc = 797, - ppc_spr_md_rpn = 798, - ppc_spr_m_tw = 799, - ppc_spr_mi_dbcam = 816, - ppc_spr_mi_dbram0 = 817, - ppc_spr_mi_dbram1 = 818, - ppc_spr_md_dbcam = 824, - ppc_spr_md_cam = 824, - ppc_spr_md_dbram0 = 825, - ppc_spr_md_ram0 = 825, - ppc_spr_md_dbram1 = 826, - ppc_spr_md_ram1 = 826, - ppc_spr_ummcr0 = 936, - ppc_spr_upmc1 = 937, - ppc_spr_upmc2 = 938, - ppc_spr_usia = 939, - ppc_spr_ummcr1 = 940, - ppc_spr_upmc3 = 941, - ppc_spr_upmc4 = 942, - ppc_spr_zpr = 944, - ppc_spr_pid = 945, - ppc_spr_mmcr0 = 952, - ppc_spr_pmc1 = 953, - ppc_spr_sgr = 953, - ppc_spr_pmc2 = 954, - ppc_spr_dcwr = 954, - ppc_spr_sia = 955, - ppc_spr_mmcr1 = 956, - ppc_spr_pmc3 = 957, - ppc_spr_pmc4 = 958, - ppc_spr_sda = 959, - ppc_spr_tbhu = 972, - ppc_spr_tblu = 973, - ppc_spr_dmiss = 976, - ppc_spr_dcmp = 977, - ppc_spr_hash1 = 978, - ppc_spr_hash2 = 979, - ppc_spr_icdbdr = 979, - ppc_spr_imiss = 980, - ppc_spr_esr = 980, - ppc_spr_icmp = 981, - ppc_spr_dear = 981, - ppc_spr_rpa = 982, - ppc_spr_evpr = 982, - ppc_spr_cdbcr = 983, - ppc_spr_tsr = 984, - ppc_spr_602_tcr = 984, - ppc_spr_403_tcr = 986, - ppc_spr_ibr = 986, - ppc_spr_pit = 987, - ppc_spr_esasrr = 988, - ppc_spr_tbhi = 988, - ppc_spr_tblo = 989, - ppc_spr_srr2 = 990, - ppc_spr_sebr = 990, - ppc_spr_srr3 = 991, - ppc_spr_ser = 991, - ppc_spr_hid0 = 1008, - ppc_spr_dbsr = 1008, - ppc_spr_hid1 = 1009, - ppc_spr_iabr = 1010, - ppc_spr_dbcr = 1010, - ppc_spr_iac1 = 1012, - ppc_spr_dabr = 1013, - ppc_spr_iac2 = 1013, - ppc_spr_dac1 = 1014, - ppc_spr_dac2 = 1015, - ppc_spr_l2cr = 1017, - ppc_spr_dccr = 1018, - ppc_spr_ictc = 1019, - ppc_spr_iccr = 1019, - ppc_spr_thrm1 = 1020, - ppc_spr_pbl1 = 1020, - ppc_spr_thrm2 = 1021, - ppc_spr_pbu1 = 1021, - ppc_spr_thrm3 = 1022, - ppc_spr_pbl2 = 1022, - ppc_spr_fpecr = 1022, - ppc_spr_lt = 1022, - ppc_spr_pir = 1023, - ppc_spr_pbu2 = 1023 - }; /* Instruction size. */ #define PPC_INSN_SIZE 4 |