aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.cc
diff options
context:
space:
mode:
authorAndrew Stubbs <ams@baylibre.com>2024-08-06 16:00:21 +0000
committerAndrew Stubbs <ams@baylibre.com>2024-09-02 13:08:46 +0000
commitb9bf0c3f54d4e36ca40598600d6e87107204c4c6 (patch)
treed4624babab8deb1ea28418519c0c348239ff30d9 /gcc/fold-const.cc
parent023641d97c5139bfcf8d468442a4e9782e90a467 (diff)
downloadgcc-b9bf0c3f54d4e36ca40598600d6e87107204c4c6.zip
gcc-b9bf0c3f54d4e36ca40598600d6e87107204c4c6.tar.gz
gcc-b9bf0c3f54d4e36ca40598600d6e87107204c4c6.tar.bz2
amdgcn: Remove TARGET_GCN5_PLUS
Now that GCN3 support is gone, TARGET_GCN5_PLUS always evaluates to true, so we can make that code unconditional, and remove all the "else" cases. The ISA features TARGET_GLOBAL_ADDRSPACE, TARGET_FLAT_OFFSETS, TARGET_EXPLICIT_CARRY, and TARGET_MULTIPLY_IMMEDIATE, are similarly also redundant and can be made unconditional. The naming of the "gcc_version" attribute has been confusing since the "rdna" attribute was added and this makes it worse, so it has been renamed to "cdna". The add-with-carry assembler mnemonics no longer have two forms, so '%^' can be removed. gcc/ChangeLog: * config/gcn/gcn-opts.h (TARGET_GCN5_PLUS): Delete. (TARGET_GLOBAL_ADDRSPACE): Delete. (TARGET_FLAT_OFFSETS): Delete. (TARGET_EXPLICIT_CARRY): Delete. (TARGET_MULTIPLY_IMMEDIATE): Delete. * config/gcn/gcn-valu.md (*mov<mode>): Rename "gcn_version" to "cdna". (*mov<mode>_4reg): Likewise. (@mov<mode>_sgprbase): Likwise. (gather<mode>_insn_1offset<exec>): Likewise. (gather<mode>_insn_1offset_ds<exec>): Likewise. (gather<mode>_insn_2offsets<exec>): Likewise. (scatter<mode>_insn_1offset<exec_scatter>): Likewise. (scatter<mode>_insn_1offset_ds<exec_scatter>): Likewise. (scatter<mode>_insn_2offsets<exec_scatter>): Likewise. (gather<mode>_insn_1offset<exec>): Remove TARGET_FLAT_OFFSETS conditionals. (scatter<mode>_insn_1offset<exec_scatter>): Likewise. (scatter<mode>_insn_1offset<exec_scatter>): Likewise. (add<mode>3<exec_clobber>): Use "_co" instead of "%^". (add<mode>3_dup<exec_clobber>): Likewise. (add<mode>3_vcc<exec_vcc>): Likewise. (add<mode>3_vcc_dup<exec_vcc>): Likewise. (addc<mode>3<exec_vcc>): Likewise. (sub<mode>3<exec_clobber>): Likewise. (sub<mode>3_vcc<exec_vcc>): Likewise. (subc<mode>3<exec_vcc>): Likewise. (*plus_carry_dpp_shr_<mode>): Likewise. (*plus_carry_in_dpp_shr_<mode>): Likewise. * config/gcn/gcn.cc (gcn_flat_address_p): Remove TARGET_FLAT_OFFSETS conditionals. (gcn_addr_space_legitimate_address_p): Likewise. (gcn_addr_space_legitimize_address): Likewise. (gcn_expand_scalar_to_vector_address): Likewise. (print_operand_address): Likewise, and TARGET_GLOBAL_ADDRSPACE also. (print_operand): Remove "%^" operand code. Remove TARGET_GLOBAL_ADDRSPACE assertion. * config/gcn/gcn.h (STACK_ADDR_SPACE): Remove GCN5 conditional. * config/gcn/gcn.md (gcn_version): Rename attribute ... (cdna): ... to this, and remove the gcn3 and gcn5 values. (enabled): Replace old "gcn_version" logic with new "cdna" logic. (*mov<mode>_insn): Rename "gcn_version" to "cdna". (*movti_insn): Likewise. (addsi3): Use "_co" instead of "%^". (addsi3_scalar_carry): Likewise. (addsi3_scalar_carry_cst): Likewise. (addcsi3_scalar): Likewise. (addcsi3_scalar_zero): Likewise. (addptrdi3): Likewise. (subsi3): Likewise. (<su>mulsi3_highpart): Remove TARGET_MULTIPLY_IMMEDIATE conditions. (<su>mulsi3_highpart_reg): Remove "gcn_version" attribute. (muldi3): Likewise. (atomic_fetch_<bare_mnemonic><mode>): Likewise. (atomic_<bare_mnemonic><mode>): Likewise. (sync_compare_and_swap<mode>_insn): Likewise. (atomic_load<mode>): Likewise. (atomic_store<mode>): Likewise. (atomic_exchange<mode>): Likewise. (<su>mulsi3_highpart_imm): Remove both TARGET_MULTIPLY_IMMEDIATE and "gcn_version". (<su>mulsidi3): Likewise. (<su>mulsidi3_imm): Likewise.
Diffstat (limited to 'gcc/fold-const.cc')
0 files changed, 0 insertions, 0 deletions