The following rule is not handled by GCC
(a & x) || (a & y) ===> a & (x | y) -- Summary: Missing expression simplication for conditional OR Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: xinliangli at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35306