rs6000: Remove TM regs
authorSegher Boessenkool <segher@kernel.crashing.org>
Mon, 6 May 2019 22:04:19 +0000 (00:04 +0200)
committerSegher Boessenkool <segher@gcc.gnu.org>
Mon, 6 May 2019 22:04:19 +0000 (00:04 +0200)
commitb56be669f0aa79df4937c780306b77af538cd3a6
tree2e888dff6c2db990d092c84a0d843da632218fdf
parent7da118f12b9ce01918cd8384e5e523c9834c09d9
rs6000: Remove TM regs

We do not need to expose the TM registers in debug info.  It isn't
actually useful there, because none of the things that can modify
these registers (other than explicit moves) are marked.

We also do not need the registers for GCC itself internally.  This
patch deletes them.

* config/rs6000/rs6000.md (TFHAR_REGNO, TFIAR_REGNO, TEXASR_REGNO):
Delete.
* config/rs6000/rs6000.h (FIRST_PSEUDO_REGISTER): Adjust.
(DWARF_FRAME_REGISTERS): Adjust.
(FIXED_REGISTERS, CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS):
Adjust.
(REG_ALLOC_ORDER): Adjust.
(enum reg_class): Delete SPR_REGS.
(REG_CLASS_NAMES): Delete SPR_REGS.
(REG_CLASS_CONTENTS): Delete SPR_REGS.  Adjust for deleted TM regs.
(REGISTER_NAMES): Adjust.
(ADDITIONAL_REGISTER_NAMES): Adjust.
* config/rs6000/darwin.h (REGISTER_NAMES): Adjust.
* config/rs6000/htm.md (htm_mfspr_<mode>, htm_mtspr_<mode>): Adjust.
* config/rs6000/predicates.md (htm_spr_reg_operand): Delete.
* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Adjust.
(htm_spr_regno): Delete.
(htm_expand_builtin): Adjust: the HTM builtins now have one fewer
argument.
(rs6000_dbx_register_number): Adjust.

From-SVN: r270927
gcc/ChangeLog
gcc/config/rs6000/darwin.h
gcc/config/rs6000/htm.md
gcc/config/rs6000/predicates.md
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/rs6000.h
gcc/config/rs6000/rs6000.md