<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">This commit is by far the most likely culprit for the hangs we see on green dragon:</div><div class=""><a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__lab.llvm.org-3A8080_green_job_clang-2Dstage2-2Dconfigure-2DRlto-5Fcheck_&d=AwMFAg&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=FP4h_cLBwdgTYHxTIM8NLvzq3vhawk8K64XZOKvb7Ig&s=j6J-cicH941cftmotOIrx4RsnoO3AzSqlCGEx_AvpQk&e=" class="">http://lab.llvm.org:8080/green/job/clang-stage2-configure-Rlto_check/</a></div><div class=""><br class=""></div><div class="">Did you have any other failures? Would you mind reverting it to see if it fixes things? (This is after an LTO bootstrap, so it takes quite some time to reproduce/propagate).</div><div class=""><br class=""></div><div class="">Fred</div><br class=""><div><blockquote type="cite" class=""><div class="">On Jun 22, 2015, at 8:58 AM, Pawel Bylica <<a href="mailto:chfast@gmail.com" class="">chfast@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">Author: chfast<br class="">Date: Mon Jun 22 10:58:11 2015<br class="">New Revision: 240291<br class=""><br class="">URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject-3Frev-3D240291-26view-3Drev&d=AwMFAg&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=FP4h_cLBwdgTYHxTIM8NLvzq3vhawk8K64XZOKvb7Ig&s=ItTD83zbN44lnfkZpjvQTmKyKxFeKETQOcHWa5hbtB4&e=" class="">http://llvm.org/viewvc/llvm-project?rev=240291&view=rev</a><br class="">Log:<br class="">Fix shl folding in DAG combiner.<br class=""><br class="">Summary: The code responsible for shl folding in the DAGCombiner was assuming incorrectly that all constants are less than 64 bits. This patch simply changes the way values are compared.<br class=""><br class="">Test Plan: A regression test included.<br class=""><br class="">Reviewers: andreadb<br class=""><br class="">Reviewed By: andreadb<br class=""><br class="">Subscribers: andreadb, test, llvm-commits<br class=""><br class="">Differential Revision: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__reviews.llvm.org_D10602&d=AwMFAg&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=FP4h_cLBwdgTYHxTIM8NLvzq3vhawk8K64XZOKvb7Ig&s=42u5tsMi6c-WfXI9qEYTDmTr2A9UeXKD7c83sxhS800&e=" class="">http://reviews.llvm.org/D10602</a><br class=""><br class="">Added:<br class="">    llvm/trunk/test/CodeGen/X86/fold-vector-shl-crash.ll<br class="">Modified:<br class="">    llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp<br class=""><br class="">Modified: llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp<br class="">URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_CodeGen_SelectionDAG_DAGCombiner.cpp-3Frev-3D240291-26r1-3D240290-26r2-3D240291-26view-3Ddiff&d=AwMFAg&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=FP4h_cLBwdgTYHxTIM8NLvzq3vhawk8K64XZOKvb7Ig&s=uqBVCdmKo3xsxguBd0O3ZF1Lz0M2Ibg1a6X4b8-eM1g&e=" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp?rev=240291&r1=240290&r2=240291&view=diff</a><br class="">==============================================================================<br class="">--- llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp (original)<br class="">+++ llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp Mon Jun 22 10:58:11 2015<br class="">@@ -4275,7 +4275,7 @@ SDValue DAGCombiner::visitSHL(SDNode *N)<br class="">   if (isNullConstant(N0))<br class="">     return N0;<br class="">   // fold (shl x, c >= size(x)) -> undef<br class="">-  if (N1C && N1C->getZExtValue() >= OpSizeInBits)<br class="">+  if (N1C && N1C->getAPIntValue().uge(OpSizeInBits))<br class="">     return DAG.getUNDEF(VT);<br class="">   // fold (shl x, 0) -> x<br class="">   if (N1C && N1C->isNullValue())<br class=""><br class="">Added: llvm/trunk/test/CodeGen/X86/fold-vector-shl-crash.ll<br class="">URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_test_CodeGen_X86_fold-2Dvector-2Dshl-2Dcrash.ll-3Frev-3D240291-26view-3Dauto&d=AwMFAg&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=FP4h_cLBwdgTYHxTIM8NLvzq3vhawk8K64XZOKvb7Ig&s=kqzrOMISM7nJz1N5OWuUZGha2JFFD34ftpd_kmPjoPE&e=" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/fold-vector-shl-crash.ll?rev=240291&view=auto</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/CodeGen/X86/fold-vector-shl-crash.ll (added)<br class="">+++ llvm/trunk/test/CodeGen/X86/fold-vector-shl-crash.ll Mon Jun 22 10:58:11 2015<br class="">@@ -0,0 +1,8 @@<br class="">+; RUN: llc < %s | FileCheck %s<br class="">+<br class="">+;CHECK-LABEL: test<br class="">+define <2 x i256> @test() {<br class="">+  %S = shufflevector <2 x i256> zeroinitializer, <2 x i256> <i256 -1, i256 -1>, <2 x i32> <i32 0, i32 2><br class="">+  %B = shl <2 x i256> %S, <i256 -1, i256 -1> ; DAG Combiner crashes here<br class="">+  ret <2 x i256> %B<br class="">+}<br class=""><br class=""><br class="">_______________________________________________<br class="">llvm-commits mailing list<br class=""><a href="mailto:llvm-commits@cs.uiuc.edu" class="">llvm-commits@cs.uiuc.edu</a><br class="">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits<br class=""></div></div></blockquote></div><br class=""></body></html>