https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103741
Tamar Christina <tnfchris at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2021-12-16 Ever confirmed|0 |1 Assignee|unassigned at gcc dot gnu.org |tnfchris at gcc dot gnu.org CC| |tnfchris at gcc dot gnu.org Status|UNCONFIRMED |ASSIGNED Priority|P3 |P1 --- Comment #1 from Tamar Christina <tnfchris at gcc dot gnu.org> --- probably mine.. the assert gcc_assert (useless_type_conversion_p (mask_type, TREE_TYPE (vec_mask))); is failing but the types are the same >>> p (TREE_TYPE (loop_mask)) $2 = (tree) 0x7fdf174631f8 >>> dbgtree ($2) <vector_type 0x7fdf174631f8 type <boolean_type 0x7fdf17463150 QI size <integer_cst 0x7fdf1757cf00 constant 8> unit-size <integer_cst 0x7fdf1757cf18 constant 1> align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fdf17463150 precision:8 min <integer_cst 0x7fdf17477fd8 -128> max <integer_cst 0x7fdf1747c030 127>> VNx2BI size <poly_int_cst 0x7fdf173e0ea0 type <integer_type 0x7fdf175940a8 bitsizetype public unsigned TI size <integer_cst 0x7fdf1757ce58 constant 128> unit-size <integer_cst 0x7fdf1757ce70 constant 16> align:128 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fdf175940a8 precision:128 min <integer_cst 0x7fdf1757ce88 0> max <integer_cst 0x7fdf17586898 0xffffffffffffffffffffffffffffffff>> constant elt0: <integer_cst 0x7fdf1757cfc0 constant 16> elt1: <integer_cst 0x7fdf1757cfc0 16>> unit-size <poly_int_cst 0x7fdf173e0e60 type <integer_type 0x7fdf17594000 sizetype public unsigned DI size <integer_cst 0x7fdf1757ce10 constant 64> unit-size <integer_cst 0x7fdf1757ce28 constant 8> align:64 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fdf17594000 precision:64 min <integer_cst 0x7fdf1757ce40 0> max <integer_cst 0x7fdf1757d5e0 18446744073709551615>> constant elt0: <integer_cst 0x7fdf1757cfd8 constant 2> elt1: <integer_cst 0x7fdf1757cfd8 2>> align:16 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fdf174631f8 nunits:[2,2]> >>> dbgtree (mask_type) <vector_type 0x7fdf174631f8 type <boolean_type 0x7fdf17463150 QI size <integer_cst 0x7fdf1757cf00 constant 8> unit-size <integer_cst 0x7fdf1757cf18 constant 1> align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fdf17463150 precision:8 min <integer_cst 0x7fdf17477fd8 -128> max <integer_cst 0x7fdf1747c030 127>> VNx2BI size <poly_int_cst 0x7fdf173e0ea0 type <integer_type 0x7fdf175940a8 bitsizetype public unsigned TI size <integer_cst 0x7fdf1757ce58 constant 128> unit-size <integer_cst 0x7fdf1757ce70 constant 16> align:128 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fdf175940a8 precision:128 min <integer_cst 0x7fdf1757ce88 0> max <integer_cst 0x7fdf17586898 0xffffffffffffffffffffffffffffffff>> constant elt0: <integer_cst 0x7fdf1757cfc0 constant 16> elt1: <integer_cst 0x7fdf1757cfc0 16>> unit-size <poly_int_cst 0x7fdf173e0e60 type <integer_type 0x7fdf17594000 sizetype public unsigned DI size <integer_cst 0x7fdf1757ce10 constant 64> unit-size <integer_cst 0x7fdf1757ce28 constant 8> align:64 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fdf17594000 precision:64 min <integer_cst 0x7fdf1757ce40 0> max <integer_cst 0x7fdf1757d5e0 18446744073709551615>> constant elt0: <integer_cst 0x7fdf1757cfd8 constant 2> elt1: <integer_cst 0x7fdf1757cfd8 2>> align:16 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7fdf174631f8 nunits:[2,2]> So need to see why useless_type_conversion_p thinks they are not.