[PATCH] D17056: Mark all CUDA device-side function defs and decls as convergent.

Artem Belevich via cfe-commits cfe-commits at lists.llvm.org
Tue Feb 9 16:43:34 PST 2016


tra added inline comments.

================
Comment at: lib/CodeGen/CodeGenModule.cpp:1880
@@ +1879,3 @@
+    // Conservatively, mark all functions in CUDA as convergent (meaning, they
+    // may call an intrinsicly convergent op, such as __syncthreads(), and so
+    // can't have certain optimizations applied around them).  LLVM will remove
----------------
intrinsically?

================
Comment at: test/CodeGenCUDA/convergent.cu:4
@@ +3,3 @@
+
+// RUN: %clang_cc1 -fcuda-is-device -triple nvptx-nvidia-cuda -emit-llvm \
+// RUN:   -o - %s | FileCheck -check-prefix DEVICE %s
----------------
You may want to add -disable-llvm-passes to make sure you're checking results of front-end actions only.


http://reviews.llvm.org/D17056





More information about the cfe-commits mailing list