http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53640
Bug #: 53640 Summary: Missed cmove with stores Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: pins...@gcc.gnu.org Take: int f(int a, int *b) { if (a >= 2) *b = 1; else *b = 0; return *b; } int f1(int a, int *b) { int t; if (a >= 2) t = 1; else t = 0; *b = t; return *b; } ---- CUT ---- Both of these are the same. f1 will produce better code.