https://bugs.llvm.org/show_bug.cgi?id=46134
Bug ID: 46134
Summary: Failure to optimize out unnecessary multiplications in
conditions
Product: libraries
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: Scalar Optimizations
Assignee: unassignedb...@nondot.org
Reporter: gabrav...@gmail.com
CC: llvm-bugs@lists.llvm.org
bool f(int a, int b)
{
return (a * b) && (a * (b + 1));
}
This can be optimized to
bool f(int a, int b)
{
int tmp = a * b;
if (!tmp)
return false;
return tmp + b;
}
GCC does this transformation, but LLVM does not.
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs