https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82192
--- Comment #11 from Jakub Jelinek <jakub at gcc dot gnu.org> --- (In reply to Jeffrey A. Law from comment #10) > Does the oddity that shifts truncate on x86, but bit operations do not come > into play here? x86 doesn't define SHIFT_COUNT_TRUNCATED (though in this testcase there is no out of bound shift count anyway) and I believe the requirement is that if it is defined then all the shift/insv/extv and similar instructions have to have the truncation behavior, not just some, so I think this macro isn't relevant to this PR. The shift count is fine, but shift count + len is or might be too big and the question is what happens with the upper bits.