rs6000: Remove TARGET_SPE and TARGET_SPE_ABI and friends

Programming / Compilers / GCC - segher [138bc75d-0d04-0410-961f-82ee72b054a4] - 7 June 2017 11:22 EDT

- config/rs6000/rs6000-common.c (rs6000_handle_option): Remove SPE ABI handling.
- config/rs6000/paired.md (paired_negv2sf2): Rename to negv2sf2. (paired_absv2sf2, paired_addv2sf3, paired_subv2sf3, paired_mulv2sf3, paired_divv2sf3): Similar.
- config/rs6000/predicates.md: Replace TARGET_SPE, TARGET_SPE_ABI, SPE_VECTOR_MODE and SPE_HIGH_REGNO_P by 0; simplify.
- config/rs6000/rs6000-builtin.def: Delete RS6000_BUILTIN_E and RS6000_BUILTIN_S. Delete BU_SPE_1, BU_SPE_2, BU_SPE_3, BU_SPE_E, BU_SPE_P, and BU_SPE_X. Rename the paired_* instruction patterns.
- config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Do not define __SPE__.
- config/rs6000/rs6000-protos.h (invalid_e500_subreg): Delete.
- config/rs6000/rs6000.c: Delete RS6000_BUILTIN_E and RS6000_BUILTIN_S. (struct rs6000_stack): Delete fields spe_gp_save_offset, spe_gp_size, spe_padding_size, and spe_64bit_regs_used. Replace TARGET_SPE and TARGET_SPE_ABI with 0, simplify. Replace SPE_VECTOR_MODE with PAIRED_VECTOR_MODE. (struct machine_function): Delete field spe_insn_chain_scanned_p. (spe_func_has_64bit_regs_p): Delete. (spe_expand_predicate_builtin): Delete. (spe_expand_evsel_builtin): Delete. (TARGET_DWARF_REGISTER_SPAN): Do not define. (TARGET_MEMBER_TYPE_FORCES_BLK): Do not define. (invalid_e500_subreg): Delete. (rs6000_legitimize_address): Always force_reg op2 as well, for paired single memory accesses. (rs6000_member_type_forces_blk): Delete. (rs6000_spe_function_arg): Delete. (rs6000_expand_unop_builtin): Delete SPE handling. (rs6000_expand_binop_builtin): Ditto. (spe_expand_stv_builtin): Delete. (bdesc_2arg_spe): Delete. (spe_expand_builtin): Delete. (spe_expand_predicate_builtin): Delete. (spe_expand_evsel_builtin): Delete. (rs6000_invalid_builtin): Remove RS6000_BTM_SPE handling. (spe_init_builtins): Delete. (spe_func_has_64bit_regs_p): Delete. (savres_routine_name): Delete "info" parameter. Adjust callers. (rs6000_emit_stack_reset): Ditto. (rs6000_dwarf_register_span): Delete.
- config/rs6000/rs6000.h (TARGET_SPE_ABI, TARGET_SPE, UNITS_PER_SPE_WORD, SPE_HIGH_REGNO_P, SPE_SIMD_REGNO_P, SPE_VECTOR_MODE, RS6000_BTM_SPE, RS6000_BUILTIN_E, RS6000_BUILTIN_S): Delete.
- config/rs6000/rs6000.md (FIRST_SPE_HIGH_REGNO, LAST_SPE_HIGH_REGNO): Delete.
- config/rs6000/rs6000.opt (-mabi=spe, -mabi=no-spe): Delete.
- config/rs6000/spe.md: Delete every pattern that uses TARGET_SPE.
- config/rs6000/vector.md (absv2sf2, negv2sf2, addv2sf3, subv2sf3, mulv2sf3, divv2sf3): Delete expanders.

9d20c62 rs6000: Remove TARGET_SPE and TARGET_SPE_ABI and friends
gcc/ChangeLog | 56 +
gcc/common/config/rs6000/rs6000-common.c | 9 -
gcc/config/rs6000/paired.md | 12 +-
gcc/config/rs6000/predicates.md | 49 +-
gcc/config/rs6000/rs6000-builtin.def | 313 +---
gcc/config/rs6000/rs6000-c.c | 4 -
gcc/config/rs6000/rs6000-protos.h | 1 -
gcc/config/rs6000/rs6000.c | 1417 +--------------
gcc/config/rs6000/rs6000.h | 44 +-
gcc/config/rs6000/rs6000.md | 2 -
gcc/config/rs6000/rs6000.opt | 8 -
gcc/config/rs6000/spe.md | 2767 ------------------------------
gcc/config/rs6000/vector.md | 95 -
13 files changed, 123 insertions(+), 4654 deletions(-)

Upstream: gcc.gnu.org


  • Share