[PATCH] D68004: [InstCombine] Fix call guard difference with dbg

Chris Ye via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 24 18:48:33 PDT 2019


yechunliang created this revision.
yechunliang added reviewers: davide, reames, vsk, apilipenko.
Herald added subscribers: llvm-commits, hiraditya.
Herald added a project: LLVM.

The dbg instructions make difference in InstCombine while using "opt -debugify-each", because GuardWideningWindow in InstCombine used to bypass looking for another guard is too small. Previous did not handle the case with llvm.dbg.value, set the initial value from "3" to "8" which could be able to handle and bypass dbg instructions.

Original CommitID: 79e917d1 <https://reviews.llvm.org/rG79e917d117b9caec749360614795cd857c21419a> - [InstCombine] Widen guards with conditions between

Fix for https://bugs.llvm.org/show_bug.cgi?id=37714


https://reviews.llvm.org/D68004

Files:
  llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp


Index: llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
===================================================================
--- llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
+++ llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
@@ -74,9 +74,11 @@
 
 STATISTIC(NumSimplified, "Number of library calls simplified");
 
+// Set instruction window wide to bypass looking for another guard and
+// also bypass @llvm.dbg.value instructions.
 static cl::opt<unsigned> GuardWideningWindow(
     "instcombine-guard-widening-window",
-    cl::init(3),
+    cl::init(8),
     cl::desc("How wide an instruction window to bypass looking for "
              "another guard"));
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D68004.221643.patch
Type: text/x-patch
Size: 678 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190925/4beab907/attachment.bin>


More information about the llvm-commits mailing list