http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52760
--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-03-29 10:34:54 UTC --- Hmm, but that means the shift count should be promoted/demoted at another place, not here. Because this place is not supposed to handle promotion/demotion but conversion of tcc_constant things that have a mode that the vectorizer assigned a vector type to with differing component type.