https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98221
--- Comment #2 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> --- (In reply to Richard Biener from comment #1) > But all GIMPLE operates on "GIMPLE lane order" so this is a defect in how > the backend handles those tree codes at expansion time? I can never remember which way round it is and always have to look it up, but: for better or (probably) worse, I think the hi/lo classification applies to the high/low parts of registers (MSB/LSB) rather than high/low lanes. Personally I'd prefer if it was the other way around, but that's not going to be easy to change.