[LLVMbugs] [Bug 7191] New: [instruction selection] float compare -> int result + march=athlon64-sse3 == "Cannot yet slect ... X86ISD::FP_TO_INT32_IN_MEM"
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Fri May 21 15:30:39 PDT 2010
http://llvm.org/bugs/show_bug.cgi?id=7191
Summary: [instruction selection] float compare -> int result +
march=athlon64-sse3 == "Cannot yet slect ...
X86ISD::FP_TO_INT32_IN_MEM"
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: kaffeemonster at googlemail.com
CC: llvmbugs at cs.uiuc.edu
The only floating point snippet in my programm and clang barfs on it, i think
im jinxed...
clang/llvm TOT at 104387
unsigned short foo(double d_lat)
{
unsigned short s_lat;
d_lat = (d_lat + 90.0) * 65535.0 / 180.0;
s_lat = d_lat < 0.0 ? 0 : (d_lat > 65535.0 ? 65535 : (unsigned
short)d_lat);
return s_lat;
}
compile with "clang -c -march=athlon64-sse3 fp.c -o fp.o", result:
fatal error: error in backend: Cannot yet select: 0xa13a670: ch =
X86ISD::FP_TO_INT32_IN_MEM 0xa12c178, 0xa13a230, 0xa140378 [ID=7]
0xa12c178: ch = EntryToken [ORD=9] [ID=0]
0xa13a230: f64,ch = load 0xa12c178, 0xa13a120, 0xa13a450<LD8[%2](align=4)>
[ORD=9] [ID=6]
0xa12c178: ch = EntryToken [ORD=9] [ID=0]
0xa13a120: i32 = FrameIndex<1> [ORD=9] [ID=1]
0xa13a450: i32 = undef [ORD=9] [ID=2]
0xa140378: i32 = FrameIndex<3> [ID=4]
Greetings
Jan
--
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