[llvm-testresults] buildbot failure in smooshlab on llvm-gcc-i386-darwin9

daniel_dunbar at apple.com daniel_dunbar at apple.com
Thu Mar 4 16:41:23 PST 2010


The Buildbot has detected a new failure of llvm-gcc-i386-darwin9 on smooshlab.
Full details are available at:
 http://smooshlab.apple.com:8010/builders/llvm-gcc-i386-darwin9/builds/4101

Buildbot URL: http://smooshlab.apple.com:8010/

Buildslave for this Build: smoosh-03.apple.com

Build Reason: 
Build Source Stamp: 97767
Blamelist: dgregor,void

BUILD FAILED: failed compile.llvm.stage2

sincerely,
 -The Buildbot


================================================================================

CHANGES:
Files:
 lib/Target/X86/X86InstrInfo.cpp
 test/CodeGen/X86/jump-opt.ll
 test/FrontendC/2008-07-29-EHLabel.ll
At: Thu 04 Mar 2010 16:28:57
Changed By: void
Comments: Micro-optimization:

This code:

float floatingPointComparison(float x, float y) {
    double product = (double)x * y;
    if (product == 0.0)
        return product;
    return product - 1.0;
}

produces this:

_floatingPointComparison:
0000000000000000        cvtss2sd        %xmm1,%xmm1
0000000000000004        cvtss2sd        %xmm0,%xmm0
0000000000000008        mulsd           %xmm1,%xmm0
000000000000000c        pxor            %xmm1,%xmm1
0000000000000010        ucomisd         %xmm1,%xmm0
0000000000000014        jne             0x00000004
0000000000000016        jp              0x00000002
0000000000000018        jmp             0x00000008
000000000000001a        addsd           0x00000006(%rip),%xmm0
0000000000000022        cvtsd2ss        %xmm0,%xmm0
0000000000000026        ret

The "jne/jp/jmp" sequence can be reduced to this instead:

_floatingPointComparison:
0000000000000000        cvtss2sd        %xmm1,%xmm1
0000000000000004        cvtss2sd        %xmm0,%xmm0
0000000000000008        mulsd           %xmm1,%xmm0
000000000000000c        pxor            %xmm1,%xmm1
0000000000000010        ucomisd         %xmm1,%xmm0
0000000000000014        jp              0x00000002
0000000000000016        je              0x00000008
0000000000000018        addsd           0x00000006(%rip),%xmm0
0000000000000020        cvtsd2ss        %xmm0,%xmm0
0000000000000024        ret

for a savings of 2 bytes.

This xform can happen when we recognize that jne and jp jump to the same "true"
MBB, the unconditional jump would jump to the "false" MBB, and the "true" branch
is the fall-through MBB.
Properties: 




Files:
 include/clang/AST/DeclBase.h
 lib/AST/DeclBase.cpp
At: Thu 04 Mar 2010 16:28:57
Changed By: dgregor
Comments: When we invalidate a declaration, make it public, so that it doesn't
trigger access control or one of the many assertions we have for valid
access specifiers.
Properties: 




LOGS:
Last 10 lines of 'stdio':
	llvm[1]: Compiling raw_os_ostream.cpp for Release build
	llvm[1]: Compiling raw_ostream.cpp for Release build
	llvm[1]: Compiling regcomp.c for Release build
	llvm[1]: Compiling regerror.c for Release build
	llvm[1]: Compiling regexec.c for Release build
	llvm[1]: Compiling regfree.c for Release build
	llvm[1]: Compiling regstrlcpy.c for Release build
	/var/folders/Xm/XmvhS8OSFaqwC1Edh0o3A++++TQ/-Tmp-//ccoaWme9.s:unknown:Undefined local symbol LBB45_12
	make[1]: *** [/Volumes/Sandbox/zorg/buildbot/smooshlab/slave/build.llvm-gcc-i386-darwin9/llvm.obj.2/lib/Support/Release/Timer.o] Error 1
	make: *** [all] Error 1




More information about the llvm-testresults mailing list