[Bug tree-optimization/82905] vector shift forced to 32 bits
pinskia at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sun Aug 1 08:02:17 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82905
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|middle-end |tree-optimization
Severity|normal |enhancement
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
So the vectorizer produces now:
vect_cst__7 = {m_9(D), m_9(D), m_9(D), m_9(D), m_9(D), m_9(D), m_9(D),
m_9(D)};
vect__1.5_3 = MEM <vector(16) unsigned char> [(unsigned char *)&p];
vect__2.6_4 = [vec_unpack_lo_expr] vect__1.5_3;
vect__2.6_5 = [vec_unpack_hi_expr] vect__1.5_3;
vect__3.7_11 = vect__2.6_4 * vect_cst__7;
vect__3.7_19 = vect__2.6_5 * vect_cst__7;
vect__4.8_10 = vect__3.7_11 >> 8;
vect__4.8_30 = vect__3.7_19 >> 8;
vect__5.9_31 = VEC_PACK_TRUNC_EXPR <vect__4.8_10, vect__4.8_30>;
MEM <vector(16) unsigned char> [(unsigned char *)&p] = vect__5.9_31;
---- CUT ----
More information about the Gcc-bugs
mailing list