http://llvm.org/bugs/show_bug.cgi?id=22376
Bug ID: 22376
Summary: Negative zero misoptimized
Product: libraries
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: Scalar Optimizations
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Classification: Unclassified
The following example fails with –O2 (passes at -O1)
extern "C" int printf(const char *, ...);
int signbit(double d) {return *((long long *)&d)<0;}
double m0 = -0.;
int main() {
if ( m0 == 0) {
if (signbit(m0) != 0)
printf("Passed\n");
else
printf("Failed\n");
}
}
It is a regression since r225660, which was for Bug 17713.
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs