[LLVMdev] Your commit 139841

Duncan Sands baldrick at free.fr
Thu Oct 13 09:03:06 PDT 2011


Hi Andrew, it looks like your commit

   r139842 | atrick | 2011-09-15 22:58:37 +0200 (Thu, 15 Sep 2011) | 2 lines

   Reapply r139759. Disable IV rewriting by default. See PR10916.

broke this buildbot:

   http://lab.llvm.org:8011/builders/llvm-x86_64-linux-checks

The failure is a bootstrap failure of llvm-gcc when comparing object files
from stages 2 and 3 (which don't match).

I was able to reproduce it locally as follows:

Configure LLVM with --enable-optimized --enable-assertions
Configure llvm-gcc with --enable-languages=c,c++,objc,obj-c++ --enable-checking 
--enable-bootstrap

The failure is pretty random, so to bisect I considered a commit to be OK if
five llvm-gcc bootstraps in a row succeeded.  I put the system under
simultaneous heavy load - this seems to increase the probability of the
bootstrap failing, decreasing the likelihood of a false positive.

I bisected down to your commit.  Unfortunately it looks like it's going to be
nasty to debug: presumably some other path is expecting induction variables to
be in a certain form but isn't checking if that's really true...  Can you please
look into this, since while llvm-gcc working is no longer a release requirement,
it would be good to not release a version of LLVM with this bug in it :)

Because LLVM failed to build for some commits near yours, I modified the LLVM
source using this patch:

Index: include/llvm/ADT/StringRef.h
===================================================================
--- include/llvm/ADT/StringRef.h	(revision 139841)
+++ include/llvm/ADT/StringRef.h	(working copy)
@@ -14,6 +14,7 @@
  #include <cstring>
  #include <utility>
  #include <string>
+#include "llvm/Support/DataTypes.h"

  namespace llvm {
    template<typename T>

I can give you access to the buildbot machine if that helps.

Ciao, Duncan.



More information about the llvm-dev mailing list