https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123773
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |avieira at gcc dot gnu.org
See Also| |https://gcc.gnu.org/bugzill
| |a/show_bug.cgi?id=123016
Last reconfirmed| |2026-01-23
Status|UNCONFIRMED |NEW
Priority|P3 |P1
Ever confirmed|0 |1
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
I can't reproduce the pr90913.f90 ICE, I can for the C++ one though.
#1 0x0000000002355c78 in prepare_vec_mask (loop_vinfo=0x51055c0,
mask_type=<vector_type 0x7ffff757a0a8>,
loop_mask=<ssa_name 0x7ffff703dc08 211>,
vec_mask=<ssa_name 0x7ffff70441b8 222>, gsi=0x7fffffffba60)
at /home/rguenther/src/gcc/gcc/tree-vect-stmts.cc:1605
1605 gcc_assert (TREE_TYPE (loop_mask) == mask_type);
(gdb) p debug_generic_expr (loop_mask->typed.type)
vector([2,2]) <signed-boolean:8>
$1 = void
(gdb) p debug_generic_expr (mask_type)
vector([2,2]) <signed-boolean:8>
there's 'SVE type' attribute on loop_mask->typed.type.
diff --git a/gcc/tree-vect-loop.cc b/gcc/tree-vect-loop.cc
index e30b8e6ef56..aa59cd1a39d 100644
--- a/gcc/tree-vect-loop.cc
+++ b/gcc/tree-vect-loop.cc
@@ -60,6 +60,7 @@ along with GCC; see the file COPYING3. If not see
#include "langhooks.h"
#include "opts.h"
#include "hierarchical_discriminator.h"
+#include "attribs.h"
/* Loop Vectorization Pass.
@@ -10544,6 +10545,7 @@ vect_record_loop_mask (loop_vec_info loop_vinfo,
vec_loop_masks *masks,
unsigned int nvectors, tree vectype, tree scalar_mask)
{
gcc_assert (nvectors != 0);
+ gcc_checking_assert (!lookup_attribute ("SVE type", TYPE_ATTRIBUTES
(vectype)));
if (scalar_mask)
{
shows
0x3dc7541 fancy_abort(char const*, int, char const*)
/home/rguenther/src/gcc/gcc/diagnostics/context.cc:1812
0x23b5a7b vect_record_loop_mask(_loop_vec_info*, vec_loop_masks*, unsigned int,
tree_node*, tree_node*)
/home/rguenther/src/gcc/gcc/tree-vect-loop.cc:10548
0x2361236 vectorizable_simd_clone_call
/home/rguenther/src/gcc/gcc/tree-vect-stmts.cc:4490
so a duplicate of PR123016 to some extent. Confirmed.