[LLVMdev] 128-bit PXOR requires SSE2
Nicolas Capens
nicolas.capens at gmail.com
Fri Jan 20 14:47:00 PST 2012
Hi all,
I think I found a bug in LLVM 3.0: When compiling for a target without
SSE2 support, there were some 128-bit PXOR instructions in the generated
code.
I traced it down to the following definition in X86InstrSSE.td:
def FsFLD0SS : I<0xEF, MRMInitReg, (outs FR32:$dst), (ins), "",
[(set FR32:$dst, fp32imm0)]>,
Requires<[HasSSE1]>, TB, OpSize;
I tried replacing the HasSSE1 with a HasSSE2 but that didn't do the
trick. I noticed that TOT has a different definition and I tried
substituting that as well but again no luck. Is there a simple way to
make it work with LLVM 3.0 or should I consider updating to a later version?
Thanks,
Nicolas
More information about the llvm-dev
mailing list