https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65067
--- Comment #3 from rguenther at suse dot de <rguenther at suse dot de> --- On Mon, 16 Feb 2015, terry.guo at arm dot com wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65067 > > --- Comment #2 from Terry Guo <terry.guo at arm dot com> --- > (In reply to Richard Biener from comment #1) > > This looks more like a failure to use bfi rather than shifts and bit > > operations. > > If the above IF clause returns false, which means we don't need to consider > strict bit field, the gcc will try to check whether we can use BFI > instruction. > Is it a good idea to do same check and attempt when IF clause returns True? I think actual code generation routines should be (are?) shared. Definitely bfi should be tried instead of producing the rest. It seems bfi doesn't work on memory anyway (or is that exposed only very late?)