http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49715
--- Comment #4 from rguenther at suse dot de <rguenther at suse dot de> 2011-07-12 15:21:51 UTC --- On Tue, 12 Jul 2011, sgunderson at bigfoot dot com wrote: > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49715 > > --- Comment #3 from sgunderson at bigfoot dot com 2011-07-12 15:19:51 UTC --- > Wow, answer in record time :-) > > I don't know anything about GCC internals, so I can't comment much on the > patch; my only worry here is what would happen if you had a very narrow mask, > e.g. (x & 0xf) and you try to coerce it into the minimum possible type (a > char); wouldn't you end up doing some sort of expansion with movzbl again? That's why I limit it to SImode truncation (that should be equivalent to an int). Quite lame ;)