https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117733
--- Comment #1 from Vineet Gupta <vineetg at gcc dot gnu.org> --- Tree vec pass is introducing the following MASK_LEN_LOAD and COND_LEN_ADD constructs. vect__31.15_91 = .MASK_LEN_LOAD (vectp_q.13_99, 64B, { -1, -1, -1, -1 }, _92(D), loop_len_97, 0); vectp_q.13_90 = vectp_q.13_99 + 32; vect__31.16_88 = .MASK_LEN_LOAD (vectp_q.13_90, 64B, { -1, -1, -1, -1 }, _89(D), loop_len_96, 0); vectp_q.13_87 = vectp_q.13_99 + 64; vect__31.17_80 = .MASK_LEN_LOAD (vectp_q.13_87, 64B, { -1, -1, -1, -1 }, _85(D), loop_len_95, 0); vectp_q.13_79 = vectp_q.13_99 + 96; vect__31.18_77 = .MASK_LEN_LOAD (vectp_q.13_79, 64B, { -1, -1, -1, -1 }, _78(D), loop_len_94, 0); vectp_q.13_76 = vectp_q.13_99 + 128; vect__31.19_72 = .MASK_LEN_LOAD (vectp_q.13_76, 64B, { -1, -1, -1, -1 }, _75(D), loop_len_93, 0); vect_powmult_84.20_67 = vect__31.15_91 * vect__31.15_91; vect_powmult_84.20_66 = vect__31.16_88 * vect__31.16_88; vect_powmult_84.20_65 = vect__31.17_80 * vect__31.17_80; vect_powmult_84.20_64 = vect__31.18_77 * vect__31.18_77; vect_powmult_84.20_63 = vect__31.19_72 * vect__31.19_72; vect__34.22_51 = .COND_LEN_ADD ({ -1, -1, -1, -1 }, vect_dqnorm_lsm.21_62, vect_powmult_84.20_67, vect_dqnorm_lsm.21_62, loop_len_97, 0); vect__34.22_50 = .COND_LEN_ADD ({ -1, -1, -1, -1 }, vect_dqnorm_lsm.21_59, vect_powmult_84.20_66, vect_dqnorm_lsm.21_59, loop_len_96, 0); vect__34.22_49 = .COND_LEN_ADD ({ -1, -1, -1, -1 }, vect_dqnorm_lsm.21_54, vect_powmult_84.20_65, vect_dqnorm_lsm.21_54, loop_len_95, 0); vect__34.22_46 = .COND_LEN_ADD ({ -1, -1, -1, -1 }, vect_dqnorm_lsm.21_53, vect_powmult_84.20_64, vect_dqnorm_lsm.21_53, loop_len_94, 0); vect__34.22_41 = .COND_LEN_ADD ({ -1, -1, -1, -1 }, vect_dqnorm_lsm.21_52, vect_powmult_84.20_63, vect_dqnorm_lsm.21_52, loop_len_93, 0);