<div dir="ltr">Sanjoy,<br><br>This commit is causing an internal compiler error with the following code:<br><br>int x0, x1, x2;<br>double *x3;<br>int fsolv() {<br>  int x4, x5 = x4 = 0;<br>  for (; x4 < x2; ++x4) {<br>    x0 = 0;<br>    for (; x0 < x4; ++x0)<br>      x1 = x3[x5++];<br>  }<br>  return 0;<br>}<br><br>Is this something you recognize?  If not, do you mind if I revert your commit while you work on the test case?<div><br></div><div>Thanks.  Diego.</div><div><br><font face="monospace, monospace">$ clang -c -O2 a.c<br>clang-3.8: /usr/local/google/home/dnovillo/llvm/llvm/lib/Analysis/LazyValueInfo.cpp:632: bool (anonymous namespace)::LazyValueInfoCache<br>::solveBlockValueNonLocal((anonymous namespace)::LVILatticeVal &, llvm::Value *, llvm::BasicBlock *): Assertion `isa<Argument>(Val) && <br>"Unknown live-in to the entry block"' failed.<br>0  libLLVMSupport.so.3.8       0x00007f484d2fafde llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 46<br>1  libLLVMSupport.so.3.8       0x00007f484d2fc119<br>2  libLLVMSupport.so.3.8       0x00007f484d2fab53 llvm::sys::RunSignalHandlers() + 131<br>3  libLLVMSupport.so.3.8       0x00007f484d2fc35b<br>4  libc.so.6                   0x00007f484a447d40<br>5  libc.so.6                   0x00007f484a447cc9 gsignal + 57<br>6  libc.so.6                   0x00007f484a44b0d8 abort + 328<br>7  libc.so.6                   0x00007f484a440b86<br>8  libc.so.6                   0x00007f484a440c32<br>9  libLLVMAnalysis.so.3.8      0x00007f48504ba546<br>10 libLLVMAnalysis.so.3.8      0x00007f48504b9dd6<br>11 libLLVMAnalysis.so.3.8      0x00007f48504b97b2<br>12 libLLVMAnalysis.so.3.8      0x00007f48504b776e<br>13 libLLVMAnalysis.so.3.8      0x00007f48504b7541 llvm::LazyValueInfo::getConstantOnEdge(llvm::Value*, llvm::BasicBlock*, llvm::BasicBl<br>ock*, llvm::Instruction*) + 129<br>14 libLLVMScalarOpts.so.3.8    0x00007f484d60a6ea<br>15 libLLVMScalarOpts.so.3.8    0x00007f484d60a317<br>16 libLLVMCore.so.3.8          0x00007f484f4281ff llvm::FPPassManager::runOnFunction(llvm::Function&) + 399<br>17 libLLVMAnalysis.so.3.8      0x00007f48503f1611<br>18 libLLVMAnalysis.so.3.8      0x00007f48503f107d<br>19 libLLVMAnalysis.so.3.8      0x00007f48503f0928<br>20 libLLVMCore.so.3.8          0x00007f484f428caa<br>21 libLLVMCore.so.3.8          0x00007f484f4287d6 llvm::legacy::PassManagerImpl::run(llvm::Module&) + 342<br>22 libLLVMCore.so.3.8          0x00007f484f4291c1 llvm::legacy::PassManager::run(llvm::Module&) + 33<br>23 libclangCodeGen.so.3.8      0x00007f484bbb6dd5<br>24 libclangCodeGen.so.3.8      0x00007f484bbb6502 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::raw_pwrite_stream*) + 162<br>25 libclangCodeGen.so.3.8      0x00007f484be89a39<br>26 libclangParse.so.3.8        0x00007f48463905b1 clang::ParseAST(clang::Sema&, bool, bool) + 817<br>27 libclangFrontend.so.3.8     0x00007f484b402d10 clang::ASTFrontendAction::ExecuteAction() + 320<br>28 libclangCodeGen.so.3.8      0x00007f484be875f4 clang::CodeGenAction::ExecuteAction() + 2100<br>29 libclangFrontend.so.3.8     0x00007f484b4027f0 clang::FrontendAction::Execute() + 112<br>30 libclangFrontend.so.3.8     0x00007f484b39f402 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 978<br>31 libclangFrontendTool.so.3.8 0x00007f484affa764 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 1172<br>32 clang-3.8                   0x0000000000423f08 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) + 920<br>33 clang-3.8                   0x0000000000417839<br>34 clang-3.8                   0x0000000000416715 main + 2277<br>35 libc.so.6                   0x00007f484a432ec5 __libc_start_main + 245<br>36 clang-3.8                   0x0000000000415ce4<br>Stack dump:<br>1.      <eof> parser at end of file<br>2.      Per-module optimization passes<br>3.      Running pass 'CallGraph Pass Manager' on module 'a.c'.<br>4.      Running pass 'Value Propagation' on function '@fsolv'</font></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Oct 2, 2015 at 7:11 PM, Sanjoy Das via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This revision was automatically updated to reflect the committed changes.<br>
Closed by commit rL249211: [SCEV] Recognize simple br-phi patterns (authored by sanjoy).<br>
<br>
Changed prior to commit:<br>
  <a href="http://reviews.llvm.org/D13378?vs=36401&id=36407#toc" rel="noreferrer" target="_blank">http://reviews.llvm.org/D13378?vs=36401&id=36407#toc</a><br>
<br>
Repository:<br>
  rL LLVM<br>
<br>
<a href="http://reviews.llvm.org/D13378" rel="noreferrer" target="_blank">http://reviews.llvm.org/D13378</a><br>
<br>
Files:<br>
  llvm/trunk/include/llvm/Analysis/ScalarEvolution.h<br>
  llvm/trunk/lib/Analysis/ScalarEvolution.cpp<br>
  llvm/trunk/test/Analysis/ScalarEvolution/smax-br-phi-idioms.ll<br>
<br>
<br>_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div>