https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110780
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement Component|target |tree-optimization Last reconfirmed| |2023-07-23 Status|UNCONFIRMED |NEW Ever confirmed|0 |1 --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- The vectorizer produces: vectp_pBE.28_115 = (unsigned char[48] *) ivtmp.73_338; _218 = ivtmp.68_335 + 1; vectp_pCSI2.19_107 = (unsigned char[48] *) _218; vectp_pCSI2.10_98 = (unsigned char[48] *) ivtmp.68_335; vect_array.12 = .LOAD_LANES (MEM <unsigned char[48]> [(uint8_t *)vectp_pCSI2.10_98]); vect__1.13_100 = vect_array.12[0]; vect__1.14_101 = vect_array.12[1]; vect__1.15_102 = vect_array.12[2]; vect_array.12 ={v} {CLOBBER}; vect__4.16_103 = vect__1.14_101 >> 4; vect__22.17_104 = vect__1.15_102 << 4; vect__5.18_105 = vect__4.16_103 | vect__22.17_104; vect_array.21 = .LOAD_LANES (MEM <unsigned char[48]> [(uint8_t *)vectp_pCSI2.19_107]); vect__6.22_109 = vect_array.21[0]; vect__6.23_110 = vect_array.21[1]; vect_array.21 ={v} {CLOBBER}; Here vect__6.22_109 is the same as vect__1.14_101 and vect__6.23_110 is the same as vect__1.15_102 (if I did this correctly).