https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66520 --- Comment #6 from Andreas Schwab <schwab@linux-m68k.org> --- If a and b are side-effect-free, pure-boolean expressions then `a && b' and `a & b' are completely equivalent and there is no reason to generate different code for them.