<div dir="ltr">+ Tom<br><br><div class="gmail_quote">On Mon, Mar 23, 2015 at 10:14 PM Jingyue Wu <<a href="mailto:jingyue@google.com">jingyue@google.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi resistor, hfinkel, eliben, meheff,<br>
<br>
Some optimizations such as jump threading and loop unswitching can negatively<br>
affect performance when applied to divergent branches. The divergence analysis<br>
added in this patch conservatively estimates which branches in a GPU program<br>
can diverge. This information can then help LLVM to run certain optimizations<br>
selectively.<br>
<br>
<a href="http://reviews.llvm.org/D8576" target="_blank">http://reviews.llvm.org/D8576</a><br>
<br>
Files:<br>
  include/llvm/Analysis/Passes.h<br>
  include/llvm/Analysis/<u></u>TargetTransformInfo.h<br>
  include/llvm/Analysis/<u></u>TargetTransformInfoImpl.h<br>
  include/llvm/CodeGen/<u></u>BasicTTIImpl.h<br>
  include/llvm/InitializePasses.<u></u>h<br>
  include/llvm/LinkAllPasses.h<br>
  lib/Analysis/Analysis.cpp<br>
  lib/Analysis/CMakeLists.txt<br>
  lib/Analysis/<u></u>DivergenceAnalysis.cpp<br>
  lib/Analysis/<u></u>TargetTransformInfo.cpp<br>
  lib/Target/NVPTX/<u></u>NVPTXTargetTransformInfo.cpp<br>
  lib/Target/NVPTX/<u></u>NVPTXTargetTransformInfo.h<br>
  test/Analysis/<u></u>DivergenceAnalysis/NVPTX/<u></u>diverge.ll<br>
  test/Analysis/<u></u>DivergenceAnalysis/NVPTX/lit.<u></u>local.cfg<br>
<br>
EMAIL PREFERENCES<br>
  <a href="http://reviews.llvm.org/settings/panel/emailpreferences/" target="_blank">http://reviews.llvm.org/<u></u>settings/panel/<u></u>emailpreferences/</a><br>
</blockquote></div></div>