+2018-11-15 Andrew Stubbs <ams@codesourcery.com>
+ Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * tree-vect-stmts.c (vectorizable_store): Don't ICE when
+ int_mode_for_size fails.
+ (vectorizable_load): Likewise.
+
2018-11-15 David Malcolm <dmalcolm@redhat.com>
* doc/ux.texi (Group logically-related diagnostics): Move
supported. */
unsigned lsize
= group_size * GET_MODE_BITSIZE (elmode);
- elmode = int_mode_for_size (lsize, 0).require ();
unsigned int lnunits = const_nunits / group_size;
/* If we can't construct such a vector fall back to
element extracts from the original vector type and
element size stores. */
- if (mode_for_vector (elmode, lnunits).exists (&vmode)
+ if (int_mode_for_size (lsize, 0).exists (&elmode)
+ && mode_for_vector (elmode, lnunits).exists (&vmode)
&& VECTOR_MODE_P (vmode)
&& targetm.vector_mode_supported_p (vmode)
&& (convert_optab_handler (vec_extract_optab,
to a larger load. */
unsigned lsize
= group_size * TYPE_PRECISION (TREE_TYPE (vectype));
- elmode = int_mode_for_size (lsize, 0).require ();
unsigned int lnunits = const_nunits / group_size;
/* If we can't construct such a vector fall back to
element loads of the original vector type. */
- if (mode_for_vector (elmode, lnunits).exists (&vmode)
+ if (int_mode_for_size (lsize, 0).exists (&elmode)
+ && mode_for_vector (elmode, lnunits).exists (&vmode)
&& VECTOR_MODE_P (vmode)
&& targetm.vector_mode_supported_p (vmode)
&& (convert_optab_handler (vec_init_optab, vmode, elmode)