[llvm-testresults] buildbot failure in smooshlab on llvm-gcc-i386-darwin9
daniel_dunbar at apple.com
daniel_dunbar at apple.com
Sun Dec 12 19:34:52 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/11928
Buildbot URL: http://smooshlab.apple.com:8010/
Buildslave for this Build: smoosh-03.apple.com
Build Reason:
Build Source Stamp: 121671
Blamelist: lattner
BUILD FAILED: failed compile.llvm-gcc.stage1
sincerely,
-The Buildbot
================================================================================
CHANGES:
Files:
lib/Transforms/Utils/SimplifyCFG.cpp
test/Transforms/SimplifyCFG/switch_create.ll
At: Sun 12 Dec 2010 19:21:42
Changed By: lattner
Comments: fix a fairly serious oversight with switch formation from
or'd conditions. Previously we'd compile something like this:
int crud (unsigned char c) {
return c == 62 || c == 34 || c == 92;
}
into:
switch i8 %c, label %lor.rhs [
i8 62, label %lor.end
i8 34, label %lor.end
]
lor.rhs: ; preds = %entry
%cmp8 = icmp eq i8 %c, 92
br label %lor.end
lor.end: ; preds = %entry, %entry, %lor.rhs
%0 = phi i1 [ true, %entry ], [ %cmp8, %lor.rhs ], [ true, %entry ]
%lor.ext = zext i1 %0 to i32
ret i32 %lor.ext
which failed to merge the compare-with-92 into the switch. With this patch
we simplify this all the way to:
switch i8 %c, label %lor.rhs [
i8 62, label %lor.end
i8 34, label %lor.end
i8 92, label %lor.end
]
lor.rhs: ; preds = %entry
br label %lor.end
lor.end: ; preds = %entry, %entry, %entry, %lor.rhs
%0 = phi i1 [ true, %entry ], [ false, %lor.rhs ], [ true, %entry ], [ true, %entry ]
%lor.ext = zext i1 %0 to i32
ret i32 %lor.ext
which is much better for codegen's switch lowering stuff. This kicks in 33 times
on 176.gcc (for example) cutting 103 instructions off the generated code.
Properties:
LOGS:
Last 10 lines of 'stdio':
../../llvm-gcc.src/gcc/optabs.c:6313: internal compiler error: Abort trap
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://llvm.org/bugs/> for instructions.
make[3]: *** [optabs.o] Error 1
make[3]: *** Waiting for unfinished jobs....
rm fsf-funding.pod gcov.pod gfdl.pod cpp.pod gpl.pod gcc.pod
make[2]: *** [all-stage2-gcc] Error 2
make[1]: *** [stage2-bubble] Error 2
make: *** [all] Error 2
Last 10 lines of 'warnings':
warning: structure `ZipDirectory' used but not defined
warning: structure `VEC_cp_token_position_heap' used but not defined
warning: structure `pointer_set_t' used but not defined
warning: structure `c_arg_info' used but not defined
warning: structure `c_switch' used but not defined
warning: structure `et_node' used but not defined
warning: structure `loop' used but not defined
warning: structure `ipa_reference_vars_info_d' used but not defined
warning: structure `reg_info_def' used but not defined
warning: structure `value_set' used but not defined
More information about the llvm-testresults
mailing list