<div dir="ltr"><div>Hi, I think the following list of commit revisions should be merged into 3.5.1:</div><div><br></div><div><div>r214385<span class="" style="white-space:pre">    </span>InstCombine: Correctly propagate NSW/NUW for x-(-A) -> x+A</div><div>r215818<span class="" style="white-space:pre">       </span>InstCombine: Fix a potential bug in 0 - (X sdiv C)  -> (X sdiv -C)</div><div>r216261<span class="" style="white-space:pre">      </span>InstCombine: Don't unconditionally preserve 'nsw' when shrinking constants</div><div>r216273<span class="" style="white-space:pre">      </span>InstCombine: Don't unconditionally preserve 'nuw' when shrinking constants</div><div>r216911<span class="" style="white-space:pre">      </span>LICM: Don't crash when an instruction is used by an unreachable BB</div><div>r219566<span class="" style="white-space:pre">      </span>InstCombine: mul to shl shouldn't preserve nsw</div><div>r219567<span class="" style="white-space:pre">  </span>InstCombine, InstSimplify: (%X /s C1) /s C2 isn't always 0 when C1 * C2 overflow</div><div>r219568<span class="" style="white-space:pre">        </span>InstCombine: Don't fold (X <<s log(INT_MIN)) /s INT_MIN to X</div><div>r219634<span class="" style="white-space:pre">      </span>InstCombine: Don't miscompile (x lshr C1) udiv C2</div><div>r219639<span class="" style="white-space:pre">       </span>InstCombine: Fix miscompile in X % -Y -> X % Y transform</div><div>r219713<span class="" style="white-space:pre"> </span>InstCombine: Don't miscompile X % ((Pow2 << A) >>u B)</div><div>r220664<span class="" style="white-space:pre">       </span>InstCombine: Fix a combine assuming that icmp operands were integers</div><div>r221069<span class="" style="white-space:pre">        </span>InstCombine: Don't assume that m_ZExt matches an Instruction</div><div>r221187<span class="" style="white-space:pre">    </span>InstCombine: Remove infinite loop caused by FoldOpIntoPhi</div><div>r221318<span class="" style="white-space:pre">   </span>Analysis: Make isSafeToSpeculativelyExecute fire less for divides</div><div>r221513<span class="" style="white-space:pre">   </span>SCCP: overdefined calls cannot become constant</div><div>r222040<span class="" style="white-space:pre">      </span>InstCombine: Fix infinite loop caused by visitFPTrunc</div><div>r222093<span class="" style="white-space:pre">       </span>ScalarEvolution: HowFarToZero was wrongly using signed division</div><div>r222104<span class="" style="white-space:pre">     </span>ScalarEvolution: Introduce SCEVSDivision and SCEVUDivision</div><div>r222126<span class="" style="white-space:pre">  </span>ScalarEvolution: Construct SCEVDivision's Derived type instead of itself</div><div>r222265<span class="" style="white-space:pre">        </span>InstCombine: Fix another infinite loop caused by visitFPTrunc</div></div><div><br></div><div>-- </div><div>David Majnemer</div></div>