Latest CVS (since about a week ago) broke a dozen tests in my nightly. Testcase attached.
Created attachment 469 [details] bugpoint reduced testcase Miscompile. If you need any more information (like the llc generated .s) just ask.
Created attachment 470 [details] matching x86 assembly Ah, it's small. Attaching the asm.
Nick, I was getting something similar until I updated my CFE this morning. Did you update your CFE and rebuild? Reid.
No, I rebuilt it right before building LLVM. I try to have a working LLVM before building the CFE. I'll try it now.
No change.
Builds and tests okay here. Dunno.
Reduced testcase: float %foo(float *%col.2.0) { %tmp = load float* %col.2.0 ; <float> [#uses=3] %tmp16 = setlt float %tmp, 0.000000e+00 ; <bool> [#uses=1] %tmp20 = sub float -0.000000e+00, %tmp ; <float> [#uses=1] %iftmp.2.0 = select bool %tmp16, float %tmp20, float %tmp ret float %iftmp.2.0 } compiles to: $ llvm-as < t.ll | llc -mcpu=i386 _foo: movl 4(%esp), %eax flds (%eax) fld %st(0) fchs fldz fucomip %st(0), %st(0) fxch %st(1) fcmovnbe %st(1), %st(0) fstp %st(1) #FP_REG_KILL ret Note that the fucomip compares two zeros against each other. This is probably fallout from Evan's recent patch. -Chris
Fixed. Testcase here: CodeGen/X86/fp-stack-compare.ll Patch here: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20061120/040133.html http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20061120/040134.html -Chris