https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66520
--- Comment #6 from Andreas Schwab <sch...@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.