The 3 HTM registers aren't also included in DWARF_FRAME_REGISTERS. */
-#define FIRST_PSEUDO_REGISTER 149
+#define FIRST_PSEUDO_REGISTER 117
/* This must be included for pre gcc 3.0 glibc compatibility. */
#define PRE_GCC3_DWARF_FRAME_REGISTERS 77
aren't included in DWARF_FRAME_REGISTERS. */
#define DWARF_FRAME_REGISTERS (FIRST_PSEUDO_REGISTER - 4)
-/* The SPE has an additional 32 synthetic registers, with DWARF debug
- info numbering for these registers starting at 1200. While eh_frame
- register numbering need not be the same as the debug info numbering,
- we choose to number these regs for eh_frame at 1200 too.
-
- We must map them here to avoid huge unwinder tables mostly consisting
- of unused space. */
-#define DWARF_REG_TO_UNWIND_COLUMN(r) \
- ((r) >= 1200 ? ((r) - 1200 + (DWARF_FRAME_REGISTERS - 32)) : (r))
-
/* Use standard DWARF numbering for DWARF debugging information. */
#define DBX_REGISTER_NUMBER(REGNO) rs6000_dbx_register_number ((REGNO), 0)
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
1, 1 \
- , 1, 1, 1, 1, 1, 1, \
- /* SPE High registers. */ \
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, \
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 \
+ , 1, 1, 1, 1, 1, 1 \
}
/* 1 for registers not available across function calls.
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
1, 1 \
- , 1, 1, 1, 1, 1, 1, \
- /* SPE High registers. */ \
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, \
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 \
+ , 1, 1, 1, 1, 1, 1 \
}
/* Like `CALL_USED_REGISTERS' except this macro doesn't require that
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0 \
- , 0, 0, 0, 0, 0, 0, \
- /* SPE High registers. */ \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \
+ , 0, 0, 0, 0, 0, 0 \
}
#define TOTAL_ALTIVEC_REGS (LAST_ALTIVEC_REGNO - FIRST_ALTIVEC_REGNO + 1)
96, 95, 94, 93, 92, 91, \
108, 107, 106, 105, 104, 103, 102, 101, 100, 99, 98, 97, \
109, 110, \
- 111, 112, 113, 114, 115, 116, \
- 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, \
- 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, \
- 141, 142, 143, 144, 145, 146, 147, 148 \
+ 111, 112, 113, 114, 115, 116 \
}
/* True if register is floating-point. */
CR_REGS,
NON_FLOAT_REGS,
CA_REGS,
- SPE_HIGH_REGS,
ALL_REGS,
LIM_REG_CLASSES
};
"CR_REGS", \
"NON_FLOAT_REGS", \
"CA_REGS", \
- "SPE_HIGH_REGS", \
"ALL_REGS" \
}
#define REG_CLASS_CONTENTS \
{ \
/* NO_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000000, 0x00000000 }, \
/* BASE_REGS. */ \
- { 0xfffffffe, 0x00000000, 0x00000008, 0x00020000, 0x00000000 }, \
+ { 0xfffffffe, 0x00000000, 0x00000008, 0x00020000 }, \
/* GENERAL_REGS. */ \
- { 0xffffffff, 0x00000000, 0x00000008, 0x00020000, 0x00000000 }, \
+ { 0xffffffff, 0x00000000, 0x00000008, 0x00020000 }, \
/* FLOAT_REGS. */ \
- { 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000 }, \
+ { 0x00000000, 0xffffffff, 0x00000000, 0x00000000 }, \
/* ALTIVEC_REGS. */ \
- { 0x00000000, 0x00000000, 0xffffe000, 0x00001fff, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0xffffe000, 0x00001fff }, \
/* VSX_REGS. */ \
- { 0x00000000, 0xffffffff, 0xffffe000, 0x00001fff, 0x00000000 }, \
+ { 0x00000000, 0xffffffff, 0xffffe000, 0x00001fff }, \
/* VRSAVE_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000000, 0x00002000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000000, 0x00002000 }, \
/* VSCR_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000000, 0x00004000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000000, 0x00004000 }, \
/* SPE_ACC_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000000, 0x00008000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000000, 0x00008000 }, \
/* SPEFSCR_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000000, 0x00010000 }, \
/* SPR_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000000, 0x00040000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000000, 0x00040000 }, \
/* NON_SPECIAL_REGS. */ \
- { 0xffffffff, 0xffffffff, 0x00000008, 0x00020000, 0x00000000 }, \
+ { 0xffffffff, 0xffffffff, 0x00000008, 0x00020000 }, \
/* LINK_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000002, 0x00000000 }, \
/* CTR_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000004, 0x00000000 }, \
/* LINK_OR_CTR_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000006, 0x00000000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000006, 0x00000000 }, \
/* SPECIAL_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000006, 0x00002000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000006, 0x00002000 }, \
/* SPEC_OR_GEN_REGS. */ \
- { 0xffffffff, 0x00000000, 0x0000000e, 0x00022000, 0x00000000 }, \
+ { 0xffffffff, 0x00000000, 0x0000000e, 0x00022000 }, \
/* CR0_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000010, 0x00000000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000010, 0x00000000 }, \
/* CR_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000ff0, 0x00000000, 0x00000000 }, \
+ { 0x00000000, 0x00000000, 0x00000ff0, 0x00000000 }, \
/* NON_FLOAT_REGS. */ \
- { 0xffffffff, 0x00000000, 0x00000ffe, 0x00020000, 0x00000000 }, \
+ { 0xffffffff, 0x00000000, 0x00000ffe, 0x00020000 }, \
/* CA_REGS. */ \
- { 0x00000000, 0x00000000, 0x00001000, 0x00000000, 0x00000000 }, \
- /* SPE_HIGH_REGS. */ \
- { 0x00000000, 0x00000000, 0x00000000, 0xffe00000, 0x001fffff }, \
+ { 0x00000000, 0x00000000, 0x00001000, 0x00000000 }, \
/* ALL_REGS. */ \
- { 0xffffffff, 0xffffffff, 0xfffffffe, 0xffe7ffff, 0x001fffff } \
+ { 0xffffffff, 0xffffffff, 0xfffffffe, 0x0007ffff } \
}
/* The same information, inverted:
&rs6000_reg_names[114][0], /* tfhar */ \
&rs6000_reg_names[115][0], /* tfiar */ \
&rs6000_reg_names[116][0], /* texasr */ \
- \
- &rs6000_reg_names[117][0], /* SPE rh0. */ \
- &rs6000_reg_names[118][0], /* SPE rh1. */ \
- &rs6000_reg_names[119][0], /* SPE rh2. */ \
- &rs6000_reg_names[120][0], /* SPE rh3. */ \
- &rs6000_reg_names[121][0], /* SPE rh4. */ \
- &rs6000_reg_names[122][0], /* SPE rh5. */ \
- &rs6000_reg_names[123][0], /* SPE rh6. */ \
- &rs6000_reg_names[124][0], /* SPE rh7. */ \
- &rs6000_reg_names[125][0], /* SPE rh8. */ \
- &rs6000_reg_names[126][0], /* SPE rh9. */ \
- &rs6000_reg_names[127][0], /* SPE rh10. */ \
- &rs6000_reg_names[128][0], /* SPE rh11. */ \
- &rs6000_reg_names[129][0], /* SPE rh12. */ \
- &rs6000_reg_names[130][0], /* SPE rh13. */ \
- &rs6000_reg_names[131][0], /* SPE rh14. */ \
- &rs6000_reg_names[132][0], /* SPE rh15. */ \
- &rs6000_reg_names[133][0], /* SPE rh16. */ \
- &rs6000_reg_names[134][0], /* SPE rh17. */ \
- &rs6000_reg_names[135][0], /* SPE rh18. */ \
- &rs6000_reg_names[136][0], /* SPE rh19. */ \
- &rs6000_reg_names[137][0], /* SPE rh20. */ \
- &rs6000_reg_names[138][0], /* SPE rh21. */ \
- &rs6000_reg_names[139][0], /* SPE rh22. */ \
- &rs6000_reg_names[140][0], /* SPE rh22. */ \
- &rs6000_reg_names[141][0], /* SPE rh24. */ \
- &rs6000_reg_names[142][0], /* SPE rh25. */ \
- &rs6000_reg_names[143][0], /* SPE rh26. */ \
- &rs6000_reg_names[144][0], /* SPE rh27. */ \
- &rs6000_reg_names[145][0], /* SPE rh28. */ \
- &rs6000_reg_names[146][0], /* SPE rh29. */ \
- &rs6000_reg_names[147][0], /* SPE rh30. */ \
- &rs6000_reg_names[148][0], /* SPE rh31. */ \
}
/* Table of additional register names to use in user input. */
{"vs60", 105},{"vs61", 106},{"vs62", 107},{"vs63", 108}, \
/* Transactional Memory Facility (HTM) Registers. */ \
{"tfhar", 114}, {"tfiar", 115}, {"texasr", 116}, \
- /* SPE high registers. */ \
- {"rh0", 117}, {"rh1", 118}, {"rh2", 119}, {"rh3", 120}, \
- {"rh4", 121}, {"rh5", 122}, {"rh6", 123}, {"rh7", 124}, \
- {"rh8", 125}, {"rh9", 126}, {"rh10", 127}, {"rh11", 128}, \
- {"rh12", 129}, {"rh13", 130}, {"rh14", 131}, {"rh15", 132}, \
- {"rh16", 133}, {"rh17", 134}, {"rh18", 135}, {"rh19", 136}, \
- {"rh20", 137}, {"rh21", 138}, {"rh22", 139}, {"rh23", 140}, \
- {"rh24", 141}, {"rh25", 142}, {"rh26", 143}, {"rh27", 144}, \
- {"rh28", 145}, {"rh29", 146}, {"rh30", 147}, {"rh31", 148}, \
}
/* This is how to output an element of a case-vector that is relative. */