diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2024-10-07 13:03:05 +0100 |
---|---|---|
committer | Richard Sandiford <richard.sandiford@arm.com> | 2024-10-07 13:03:05 +0100 |
commit | 03299164830e19405b35a5fa862e248df4ea01e2 (patch) | |
tree | 52d058506866ae0a80b2cbdc144378f3986d431d /gcc | |
parent | 8157f3f2d211bfbf53fbf8dd209b47ce583f4142 (diff) | |
download | gcc-03299164830e19405b35a5fa862e248df4ea01e2.zip gcc-03299164830e19405b35a5fa862e248df4ea01e2.tar.gz gcc-03299164830e19405b35a5fa862e248df4ea01e2.tar.bz2 |
vect: Add more dump messages for VLA SLP permutation [PR116583]
Taking the !repeating_p route for VLA vectors causes analysis
to fail, but it wasn't clear from the dump files when this
had happened, and which node caused it.
gcc/
PR tree-optimization/116583
* tree-vect-slp.cc (vectorizable_slp_permutation_1): Add more
dump messages.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/tree-vect-slp.cc | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc index a5cd596..849863c 100644 --- a/gcc/tree-vect-slp.cc +++ b/gcc/tree-vect-slp.cc @@ -10333,10 +10333,22 @@ vectorizable_slp_permutation_1 (vec_info *vinfo, gimple_stmt_iterator *gsi, instead of relying on the pattern described above. */ if (!nunits.is_constant (&npatterns) || !TYPE_VECTOR_SUBPARTS (op_vectype).is_constant ()) - return -1; + { + if (dump_p) + dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location, + "unsupported permutation %p on variable-length" + " vectors\n", (void *) node); + return -1; + } nelts_per_pattern = ncopies = 1; if (linfo && !LOOP_VINFO_VECT_FACTOR (linfo).is_constant (&ncopies)) - return -1; + { + if (dump_p) + dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location, + "unsupported permutation %p for variable VF\n", + (void *) node); + return -1; + } pack_p = false; unpack_factor = 1; } |