aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
authorRoger Sayle <roger@nextmovesoftware.com>2024-07-12 12:30:56 +0100
committerRoger Sayle <roger@nextmovesoftware.com>2024-07-12 12:34:38 +0100
commit6b5d263f2c90c3e22cdf576970c94bca268c5296 (patch)
treedb7f97b582f5332f49e569522279c3ceacc7d304 /libcpp
parent56de68aba6cb9cf3022d9e303eec6c6cdb49ad4d (diff)
downloadgcc-6b5d263f2c90c3e22cdf576970c94bca268c5296.zip
gcc-6b5d263f2c90c3e22cdf576970c94bca268c5296.tar.gz
gcc-6b5d263f2c90c3e22cdf576970c94bca268c5296.tar.bz2
i386: Some AVX512 ternlog expansion refinements.
This patch replaces the calls to force_reg in ix86_expand_ternlog_binop and ix86_expand_ternlog with gen_reg_rtx and emit_move_insn. This patch also cleans up whitespace, consistently uses CONST_VECTOR_P instead of GET_CODE and tweaks checks for ix86_ternlog_leaf_p (for example where vpandn may take a memory operand). 2024-07-12 Roger Sayle <roger@nextmovesoftware.com> Hongtao Liu <hongtao.liu@intel.com> gcc/ChangeLog * config/i386/i386-expand.cc (ix86_broadcast_from_constant): Use CONST_VECTOR_P instead of comparison against GET_CODE. (ix86_gen_bcst_mem): Likewise. (ix86_ternlog_leaf_p): Likewise. (ix86_ternlog_operand_p): ix86_ternlog_leaf_p is always true for vector_all_ones_operand. (ix86_expand_ternlog_bin_op): Use CONST_VECTOR_P instead of equality comparison against GET_CODE. Replace call to force_reg with gen_reg_rtx and emit_move_insn (for VEC_DUPLICATE broadcast). Check for !register_operand instead of memory_operand. Support CONST_VECTORs by calling force_const_mem. (ix86_expand_ternlog): Fix indentation whitespace. Allow ix86_ternlog_leaf_p as ix86_expand_ternlog_andnot's second operand. Use CONST_VECTOR_P instead of equality against GET_CODE. Use gen_reg_rtx and emit_move_insn for ~a, ~b and ~c cases.
Diffstat (limited to 'libcpp')
0 files changed, 0 insertions, 0 deletions