Ah, the code generated by this patch is incorrect. As Simon said, SSE only has fast variable shift support for uniform values. I misunderstood the meaning of the vectorized shift instruction. Will rewrite the patch. REPOSITORY rL LLVM http://reviews.llvm.org/D9923 EMAIL PREFERENCES http://reviews.llvm.org/settings/panel/emailpreferences/