[PATCH] D17430: [ifcvn] Don't duplicate blocks containing convergent instructions.

Justin Lebar via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 18 17:49:24 PST 2016


jlebar created this revision.
jlebar added a reviewer: echristo.
jlebar added subscribers: llvm-commits, tra.

No test, because the two archs that have convergent MIs, nvptx and
amdgcn, don't enable ifcvn.

http://reviews.llvm.org/D17430

Files:
  lib/CodeGen/IfConversion.cpp

Index: lib/CodeGen/IfConversion.cpp
===================================================================
--- lib/CodeGen/IfConversion.cpp
+++ lib/CodeGen/IfConversion.cpp
@@ -679,7 +679,7 @@
     if (I->isDebugValue())
       continue;
 
-    if (I->isNotDuplicable())
+    if (I->isNotDuplicable() || I->isConvergent())
       BBI.CannotBeCopied = true;
 
     bool isPredicated = TII->isPredicated(I);


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17430.48441.patch
Type: text/x-patch
Size: 403 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160219/749f7e3a/attachment.bin>


More information about the llvm-commits mailing list