[LLVMbugs] [Bug 3287] New: Vector of float with length 2 broken on x86
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Tue Jan 6 12:46:00 PST 2009
http://llvm.org/bugs/show_bug.cgi?id=3287
Summary: Vector of float with length 2 broken on x86
Product: new-bugs
Version: unspecified
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: lennart at augustsson.net
CC: llvmbugs at cs.uiuc.edu
Vectors of float on the x86 use the MM registers and not the MMX registers
which wreaks havoc. Here is a simple test program which prints nan instead of
1.
If you comment out the (pointless) store it prints 1.
This is with llvm-2.4.
foo.ll:
define double @foo(<2 x float>*) {
store <2 x float> < float 1.000000e+00, float 2.000000e+00 >, <2 x
float>* %0
ret double 1.000000e+00
}
c.c:
double foo(float *);
main()
{
float fs[2];
printf("%g\n", foo(fs));
}
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list