Re: [PATCH] D16559: [CUDA] Add -fcuda-allow-variadic-functions.

2016-01-26 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL258822: [CUDA] Add -fcuda-allow-variadic-functions. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16559?vs=45915=46005#toc Repository: rL LLVM

Re: [PATCH] D16593: [CUDA] Implemented device-side support for functions in .

2016-01-26 Thread Justin Lebar via cfe-commits
jlebar added a comment. Missing (?) functions: - div, ldiv, lldiv, imaxdiv - imaxabs If you left these out intentionally (I forget if nvidia supports div_t), that's probably fine, but maybe add a comment? wrt the "::" comments, some are nits because I think we end up calling the right thing,

Re: [PATCH] D16501: [CUDA] Don't generate aliases for static extern "C" functions.

2016-01-25 Thread Justin Lebar via cfe-commits
jlebar added a comment. In http://reviews.llvm.org/D16501#335225, @tra wrote: > Failing silently is not a good idea. At the very least there should produce > an error. > The right thing to do here, IMO, would be to generate a stub with alias name > that just jumps to or calls aliasee.

r258734 - [CUDA] Don't generate aliases for static extern "C" functions.

2016-01-25 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Mon Jan 25 16:36:37 2016 New Revision: 258734 URL: http://llvm.org/viewvc/llvm-project?rev=258734=rev Log: [CUDA] Don't generate aliases for static extern "C" functions. Summary: These aliases are done to support inline asm, but there's nothing we can do: NVPTX doesn't

Re: [PATCH] D16501: [CUDA] Don't generate aliases for static extern "C" functions.

2016-01-25 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL258734: [CUDA] Don't generate aliases for static extern "C" functions. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16501?vs=45781=45919#toc Repository: rL LLVM

r258733 - [CUDA] Disable ctor/dtor aliases in device code.

2016-01-25 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Mon Jan 25 16:36:35 2016 New Revision: 258733 URL: http://llvm.org/viewvc/llvm-project?rev=258733=rev Log: [CUDA] Disable ctor/dtor aliases in device code. Summary: NVPTX doesn't support aliases, so don't generate them. Reviewers: tra Subscribers: cfe-commits, jhen,

Re: [PATCH] D16499: [CUDA] Disable ctor/dtor aliases in device code.

2016-01-25 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL258733: [CUDA] Disable ctor/dtor aliases in device code. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16499?vs=45779=45918#toc Repository: rL LLVM

[PATCH] D16559: [CUDA] Add -fcuda-allow-variadic-functions.

2016-01-25 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: bkramer, echristo, jhen, cfe-commits. Turns out the variadic function checking added in r258643 was too strict for some existing users; give them an escape valve. When -fcuda-allow-variadic-functions is passed,

r258737 - [CUDA] Add -target to cuda-constructor-alias.cu test so it doesn't fail on Mac.

2016-01-25 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Mon Jan 25 16:52:31 2016 New Revision: 258737 URL: http://llvm.org/viewvc/llvm-project?rev=258737=rev Log: [CUDA] Add -target to cuda-constructor-alias.cu test so it doesn't fail on Mac. The test was checking that we passed -mconstructor-alias to host compilation, but that

Re: [PATCH] D16484: [CUDA] Disallow variadic functions other than printf in device code.

2016-01-23 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL258643: [CUDA] Disallow variadic functions other than printf in device code. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16484?vs=45736=45811#toc Repository: rL LLVM

r258642 - [CUDA] Make printf work.

2016-01-23 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Sat Jan 23 15:28:14 2016 New Revision: 258642 URL: http://llvm.org/viewvc/llvm-project?rev=258642=rev Log: [CUDA] Make printf work. Summary: The code in CGCUDACall is largely based on a patch written by Eli Bendersky:

Re: [PATCH] D16502: [CUDA] Reject the alias attribute in CUDA device code.

2016-01-23 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: test/SemaCUDA/alias.cu:1-2 @@ +1,3 @@ +// REQUIRES: x86-registered-target +// REQUIRES: nvptx-registered-target +// RUN: %clang_cc1 -triple nvptx-unknown-cuda -fsyntax-only -fcuda-is-device -verify -DEXPECT_ERR %s jlebar

Re: [PATCH] D16495: [CUDA] Use Triple::isNVPTX() instead of enumerating nvptx && nvptx64.

2016-01-23 Thread Justin Lebar via cfe-commits
jlebar added a comment. In http://reviews.llvm.org/D16495#334383, @echristo wrote: > Probably qualifies as obvious. Also can you add some text to the assert > while you're there? Done in my local tree, will submit with that change. http://reviews.llvm.org/D16495

Re: [PATCH] D16502: [CUDA] Reject the alias attribute in CUDA device code.

2016-01-23 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL258641: [CUDA] Reject the alias attribute in CUDA device code. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16502?vs=45783=45809#toc Repository: rL LLVM

Re: [PATCH] D16495: [CUDA] Use Triple::isNVPTX() instead of enumerating nvptx && nvptx64.

2016-01-23 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL258640: [CUDA] Use Triple::isNVPTX() instead of enumerating nvptx && nvptx64. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16495?vs=45775=45808#toc Repository: rL LLVM

Re: [PATCH] D16372: [CUDA] Make printf work.

2016-01-23 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL258642: [CUDA] Make printf work. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16372?vs=45456=45810#toc Repository: rL LLVM http://reviews.llvm.org/D16372 Files:

r258643 - [CUDA] Disallow variadic functions other than printf in device code.

2016-01-23 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Sat Jan 23 15:28:17 2016 New Revision: 258643 URL: http://llvm.org/viewvc/llvm-project?rev=258643=rev Log: [CUDA] Disallow variadic functions other than printf in device code. Reviewers: tra Subscribers: cfe-commits, echristo, jhen Differential Revision:

[PATCH] D16514: Add -stop-on-failure driver option, and enable it by default for CUDA compiles.

2016-01-23 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: echristo, cfe-commits, jhen. When compiling CUDA, we run the frontend N times, once for each device arch. This means that if you have a compile error in your file, you'll see that error N times. Relatedly, if

[PATCH] D16484: [CUDA] Disallow variadic functions other than printf in device code.

2016-01-22 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: jhen, echristo, cfe-commits. http://reviews.llvm.org/D16484 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaDecl.cpp test/SemaCUDA/va-arg.cu test/SemaCUDA/vararg.cu Index:

Re: [PATCH] D16484: [CUDA] Disallow variadic functions other than printf in device code.

2016-01-22 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 45736. jlebar marked an inline comment as done. jlebar added a comment. Add check for extern "C" printf -- we don't want to take just any printf! http://reviews.llvm.org/D16484 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaDecl.cpp

[PATCH] D16502: [CUDA] Reject the alias attribute in CUDA device code.

2016-01-22 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: echristo, jhen, cfe-commits. CUDA (well, strictly speaking, NVPTX) doesn't support aliases. http://reviews.llvm.org/D16502 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaDeclAttr.cpp

[PATCH] D16499: [CUDA] Disable ctor/dtor aliases in device code.

2016-01-22 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: echristo, jhen, cfe-commits. NVPTX doesn't support aliases, so don't generate them. http://reviews.llvm.org/D16499 Files: lib/Driver/Tools.cpp test/Driver/cuda-constructor-alias.cu Index:

[PATCH] D16501: [CUDA] Don't generate aliases for static extern "C" functions.

2016-01-22 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: echristo, jhen, cfe-commits. These aliases are done to support inline asm, but there's nothing we can do: NVPTX doesn't support aliases. http://reviews.llvm.org/D16501 Files: lib/CodeGen/CodeGenModule.cpp

[PATCH] D16372: [CUDA] Make printf work.

2016-01-20 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: jhen, echristo, cfe-commits. The code in CGCUDACall is largely based on a patch written by Eli Bendersky: http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20140324/210218.html That patch implemented an

Re: [PATCH] D16372: [CUDA] Make printf work.

2016-01-20 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: test/CodeGenCUDA/printf.cu:12 @@ +11,3 @@ +// Check a simple call to printf end-to-end. +__device__ int CheckSimple() { + // CHECK: [[FMT:%[0-9]+]] = load{{.*}}%fmt tra wrote: > You may want to add a test case for

Re: [PATCH] D16261: [CUDA] Only allow __global__ on free functions and static member functions.

2016-01-19 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 45297. jlebar marked an inline comment as done. jlebar added a comment. Address tra's review. http://reviews.llvm.org/D16261 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaCUDA.cpp lib/Sema/SemaDeclAttr.cpp

Re: [PATCH] D16261: [CUDA] Only allow __global__ on free functions and static member functions.

2016-01-19 Thread Justin Lebar via cfe-commits
jlebar added a comment. Thank you for the review. Comment at: include/clang/Basic/DiagnosticSemaKinds.td:6418 @@ +6417,3 @@ +def warn_nvcc_compat_kern_is_method : Warning< + "kernel function %0 is a member function; this may not be accepted by nvcc">, + InGroup;

Re: [PATCH] D16261: [CUDA] Only allow __global__ on free functions and static member functions.

2016-01-19 Thread Justin Lebar via cfe-commits
jlebar added a comment. Checked Thrust as we discussed. It doesn't seem to be getting hung up here. http://reviews.llvm.org/D16261 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D16331: [CUDA] Bail, rather than crash, on va_arg in device code.

2016-01-19 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: cfe-commits, jhen, echristo. http://reviews.llvm.org/D16331 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaExpr.cpp test/SemaCUDA/vararg.cu Index: test/SemaCUDA/vararg.cu

Re: [PATCH] D16331: [CUDA] Bail, rather than crash, on va_arg in device code.

2016-01-19 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 45305. jlebar added a comment. Rename test file. http://reviews.llvm.org/D16331 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaExpr.cpp test/SemaCUDA/va-arg.cu Index: test/SemaCUDA/va-arg.cu

Re: [PATCH] D16307: [CUDA] Handle -O options (more) correctly.

2016-01-19 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL258174: [CUDA] Handle -O options (more) correctly. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16307?vs=45223=45290#toc Repository: rL LLVM

r258174 - [CUDA] Handle -O options (more) correctly.

2016-01-19 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Tue Jan 19 13:52:21 2016 New Revision: 258174 URL: http://llvm.org/viewvc/llvm-project?rev=258174=rev Log: [CUDA] Handle -O options (more) correctly. Summary: Previously we'd crash the driver if you passed -O0. Now we try to handle all of clang's various optimization flags

Re: [PATCH] D16261: [CUDA] Only allow __global__ on free functions and static member functions.

2016-01-19 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: lib/Sema/SemaDeclAttr.cpp:3620-3629 @@ -3619,2 +3619,12 @@ } + if (const auto *Method = dyn_cast(FD)) { +if (Method->isInstance()) { + S.Diag(Method->getLocStart(), diag::err_kern_is_nonstatic_method) + << Method; +

Re: [PATCH] D16261: [CUDA] Only allow __global__ on free functions and static member functions.

2016-01-19 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. jlebar marked 3 inline comments as done. Closed by commit rL258263: [CUDA] Only allow __global__ on free functions and static member functions. (authored by jlebar). Changed prior to commit:

Re: [PATCH] D16331: [CUDA] Bail, rather than crash, on va_arg in device code.

2016-01-19 Thread Justin Lebar via cfe-commits
jlebar added a comment. Fixed and submitted. Repository: rL LLVM http://reviews.llvm.org/D16331 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

r258264 - [CUDA] Bail, rather than crash, on va_arg in device code.

2016-01-19 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Tue Jan 19 18:27:00 2016 New Revision: 258264 URL: http://llvm.org/viewvc/llvm-project?rev=258264=rev Log: [CUDA] Bail, rather than crash, on va_arg in device code. Reviewers: tra Subscribers: echristo, jhen, cfe-commits Differential Revision:

r258263 - [CUDA] Only allow __global__ on free functions and static member functions.

2016-01-19 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Tue Jan 19 18:26:57 2016 New Revision: 258263 URL: http://llvm.org/viewvc/llvm-project?rev=258263=rev Log: [CUDA] Only allow __global__ on free functions and static member functions. Summary: Warn for NVCC compatibility if you declare a static member function or inline

Re: [PATCH] D16331: [CUDA] Bail, rather than crash, on va_arg in device code.

2016-01-19 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. jlebar marked 2 inline comments as done. Closed by commit rL258264: [CUDA] Bail, rather than crash, on va_arg in device code. (authored by jlebar). Changed prior to commit:

Re: [PATCH] D16307: [CUDA] Handle -O options (more) correctly.

2016-01-18 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 45223. jlebar added a comment. Update comment http://reviews.llvm.org/D16307 Files: lib/Driver/Tools.cpp test/Driver/cuda-external-tools.cu Index: test/Driver/cuda-external-tools.cu ===

Re: [PATCH] D16307: [CUDA] Handle -O options (more) correctly.

2016-01-18 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 45222. jlebar added a comment. Map -Os, -Oz to -O2, rather than -O3. http://reviews.llvm.org/D16307 Files: lib/Driver/Tools.cpp test/Driver/cuda-external-tools.cu Index: test/Driver/cuda-external-tools.cu

[PATCH] D16307: [CUDA] Handle -O options (more) correctly.

2016-01-18 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: jhen, echristo, cfe-commits. Previously we'd crash the driver if you passed -O0. Now we try to handle all of clang's various optimization flags in a sane way. http://reviews.llvm.org/D16307 Files:

Re: [PATCH] D15305: [CUDA] Do not allow dynamic initialization of global device side variables.

2016-01-17 Thread Justin Lebar via cfe-commits
jlebar added a comment. tra asked me to check for coverage. Looks pretty good in that respect. Comment at: include/clang/Basic/DiagnosticSemaKinds.td:6419 @@ +6418,3 @@ +"dynamic initialization is not supported for " +"__device__, __constant__ and __shared__

Re: r257808 - Don't build jobs for the same Action + ToolChain twice.

2016-01-15 Thread Justin Lebar via cfe-commits
000gn/T/hello_world-1b17ac.out and >> /var/folders/pb/95pc7qfx2xl9kr9kg0gg_9ccgn/T/hello_world-1b17ac.out have >> the same architectures (armv7) and can't be in the same fat output file >> clang-3.9: error: lipo command failed with exit code 1 (use -v to see >> invoca

Re: r257808 - Don't build jobs for the same Action + ToolChain twice.

2016-01-15 Thread Justin Lebar via cfe-commits
pc7qfx2xl9kr9kg0gg_9ccgn/T/hello_world-1b17ac.out have >>> the same architectures (armv7) and can't be in the same fat output file >>> clang-3.9: error: lipo command failed with exit code 1 (use -v to see >>> invocation) >>> >>> Can someone more familiar w

r257986 - Fix buildbot bustage in Driver/darwin-multiarch-arm.c caused by r257983.

2016-01-15 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Fri Jan 15 22:50:13 2016 New Revision: 257986 URL: http://llvm.org/viewvc/llvm-project?rev=257986=rev Log: Fix buildbot bustage in Driver/darwin-multiarch-arm.c caused by r257983. The test was too loose; "ld" was matching directories named "build" in the path. Modified:

[PATCH] D16250: Respect bound archs, even when they don't alter the toolchain.

2016-01-15 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: cfe-commits, beanz, echristo. Herald added a subscriber: aemerson. It's possible to BindArch without changing the toolchain at all. For example, armv7 and armv7s have exactly the same triple. Therefore the

Re: [PATCH] D15960: Don't build jobs for the same Action + ToolChain twice.

2016-01-15 Thread Justin Lebar via cfe-commits
jlebar accepted this revision. jlebar added a reviewer: jlebar. jlebar added a comment. This revision is now accepted and ready to land. Pushed in r257808 with echristo's lg (sorry, didn't have the right metadata in the commit). http://reviews.llvm.org/D15960

Re: [PATCH] D16250: Respect bound archs, even when they don't alter the toolchain.

2016-01-15 Thread Justin Lebar via cfe-commits
jlebar added a comment. In http://reviews.llvm.org/D16250#328552, @tra wrote: > Looks OK to me. > Perhaps BoundArch w/o toolchain is sufficient for the key as toolchain would > be derived from it. Yeah, it might work, I wasn't convinced it was sound. The bound TC is derived from the

r257983 - Respect bound archs, even when they don't alter the toolchain.

2016-01-15 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Fri Jan 15 21:30:08 2016 New Revision: 257983 URL: http://llvm.org/viewvc/llvm-project?rev=257983=rev Log: Respect bound archs, even when they don't alter the toolchain. Summary: It's possible to BindArch without changing the toolchain at all. For example, armv7 and armv7s

Re: [PATCH] D16250: Respect bound archs, even when they don't alter the toolchain.

2016-01-15 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL257983: Respect bound archs, even when they don't alter the toolchain. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16250?vs=45061=45064#toc Repository: rL LLVM

Re: [PATCH] D15858: Warn undeclared identifiers in CUDA kernel calls

2016-01-14 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL257839: [CUDA] Warn undeclared identifiers in CUDA kernel calls (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D15858?vs=44933=44938#toc Repository: rL LLVM

r257839 - [CUDA] Warn undeclared identifiers in CUDA kernel calls

2016-01-14 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Jan 14 17:31:30 2016 New Revision: 257839 URL: http://llvm.org/viewvc/llvm-project?rev=257839=rev Log: [CUDA] Warn undeclared identifiers in CUDA kernel calls Value, type, and instantiation dependence were not being handled correctly for CUDAKernelCallExpr AST nodes. As

r257809 - [CUDA] Invoke ptxas and fatbinary during compilation.

2016-01-14 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Jan 14 15:41:27 2016 New Revision: 257809 URL: http://llvm.org/viewvc/llvm-project?rev=257809=rev Log: [CUDA] Invoke ptxas and fatbinary during compilation. Summary: Previously we compiled CUDA device code to PTX assembly and embedded that asm as text in our host binary.

Re: [PATCH] D16080: [CUDA] Add tests for compiling CUDA files with -E.

2016-01-14 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL257807: [CUDA] Add tests for compiling CUDA files with -E. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16080?vs=44823=44920#toc Repository: rL LLVM

r257810 - [CUDA] Add test for compiling CUDA code with -S.

2016-01-14 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Jan 14 15:41:31 2016 New Revision: 257810 URL: http://llvm.org/viewvc/llvm-project?rev=257810=rev Log: [CUDA] Add test for compiling CUDA code with -S. Reviewers: tra Subscribers: cfe-commits, jhen Differential Revision: http://reviews.llvm.org/D16081 Added:

r257808 - Don't build jobs for the same Action + ToolChain twice.

2016-01-14 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Jan 14 15:41:21 2016 New Revision: 257808 URL: http://llvm.org/viewvc/llvm-project?rev=257808=rev Log: Don't build jobs for the same Action + ToolChain twice. Summary: Right now if the Action graph is a DAG and we encounter an action twice, we will run it twice. This

Re: [PATCH] D16081: [CUDA] Add test for compiling CUDA code with -S.

2016-01-14 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL257810: [CUDA] Add test for compiling CUDA code with -S. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16081?vs=44542=44922#toc Repository: rL LLVM

r257807 - [CUDA] Add tests for compiling CUDA files with -E.

2016-01-14 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Jan 14 15:41:18 2016 New Revision: 257807 URL: http://llvm.org/viewvc/llvm-project?rev=257807=rev Log: [CUDA] Add tests for compiling CUDA files with -E. Reviewers: tra Subscribers: cfe-commits, jhen Differential Revision: http://reviews.llvm.org/D16080 Added:

Re: [PATCH] D16082: [CUDA] Invoke ptxas and fatbinary during compilation.

2016-01-14 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL257809: [CUDA] Invoke ptxas and fatbinary during compilation. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16082?vs=44586=44921#toc Repository: rL LLVM

Re: [PATCH] D16080: [CUDA] Add tests for compiling CUDA files with -E.

2016-01-13 Thread Justin Lebar via cfe-commits
jlebar marked 2 inline comments as done. jlebar added a comment. Thank you for the review, Artem. http://reviews.llvm.org/D16080 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D16080: [CUDA] Add tests for compiling CUDA files with -E.

2016-01-13 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 44823. jlebar added a comment. Address tra's review comments. http://reviews.llvm.org/D16080 Files: test/Preprocessor/cuda-preprocess.cu Index: test/Preprocessor/cuda-preprocess.cu === ---

Re: [PATCH] D16080: [CUDA] Add tests for compiling CUDA files with -E.

2016-01-13 Thread Justin Lebar via cfe-commits
jlebar marked 2 inline comments as done. Comment at: test/Driver/cuda-preprocess.cu:13-16 @@ +12,6 @@ + +// RUN: %clang -E -target x86_64-linux-gnu --cuda-gpu-arch=sm_20 %s 2>&1 \ +// RUN: | FileCheck -check-prefix NOARCH %s +// RUN: %clang -E -target x86_64-linux-gnu

r257530 - [CUDA] Add explicit mapping from sm_XX to compute_YY.

2016-01-12 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Tue Jan 12 16:23:04 2016 New Revision: 257530 URL: http://llvm.org/viewvc/llvm-project?rev=257530=rev Log: [CUDA] Add explicit mapping from sm_XX to compute_YY. Summary: This is used by D16082 when it invokes fatbinary. Reviewers: tra Subscribers: cfe-commits, jhen,

r257554 - [CUDA] Report an error if code tries to mix incompatible CUDA attributes.

2016-01-12 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Tue Jan 12 19:07:35 2016 New Revision: 257554 URL: http://llvm.org/viewvc/llvm-project?rev=257554=rev Log: [CUDA] Report an error if code tries to mix incompatible CUDA attributes. Summary: Thanks to jhen for helping me figure this out. Reviewers: tra, echristo

r257557 - [CUDA] Rename check-prefixes in cuda-options.cu and cuda-unused-arg-warning.cu.

2016-01-12 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Tue Jan 12 19:24:35 2016 New Revision: 257557 URL: http://llvm.org/viewvc/llvm-project?rev=257557=rev Log: [CUDA] Rename check-prefixes in cuda-options.cu and cuda-unused-arg-warning.cu. Summary: Rename the args to be more human-readable. Among other things, this lets us

Re: [PATCH] D15911: Move ownership of Action objects into Compilation.

2016-01-11 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL257407: Move ownership of Action objects into Compilation. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D15911?vs=44379=44566#toc Repository: rL LLVM

Re: [PATCH] D16082: [CUDA] Invoke ptxas and fatbinary during compilation.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar added a comment. In http://reviews.llvm.org/D16082#324138, @tra wrote: > Make sure it works with -save-temps and -fintegrated-as/-fno-integrated-as. > They tend to throw wrenches into pipeline construction. Thanks. All of them worked except -fintegrated-as, which was causing us not to

Re: [PATCH] D16082: [CUDA] Invoke ptxas and fatbinary during compilation.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 44584. jlebar marked 8 inline comments as done. jlebar added a comment. Address tra, echristo's review comments. http://reviews.llvm.org/D16082 Files: include/clang/Driver/Action.h include/clang/Driver/Options.td include/clang/Driver/ToolChain.h

Re: [PATCH] D16097: [CUDA] Add explicit mapping from sm_XX to compute_YY.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 44585. jlebar added a comment. Update to latest set of architectures, according to ptxas --help from cuda 7.5. http://reviews.llvm.org/D16097 Files: include/clang/Driver/Action.h lib/Driver/Action.cpp test/Driver/cuda-bad-arch.cu Index:

r257408 - Make Driver::BuildJobsForAction return an InputInfo, instead of using an outparam.

2016-01-11 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Mon Jan 11 17:09:32 2016 New Revision: 257408 URL: http://llvm.org/viewvc/llvm-project?rev=257408=rev Log: Make Driver::BuildJobsForAction return an InputInfo, instead of using an outparam. Summary: Explicit is better than implicit. Reviewers: echristo Subscribers:

Re: [PATCH] D16079: [CUDA] Reject values for --cuda-gpu-arch that are not of the form /sm_\d+/.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 44564. jlebar added a comment. Add missing change to DiagnosticDriverKinds.td. http://reviews.llvm.org/D16079 Files: include/clang/Basic/DiagnosticDriverKinds.td include/clang/Driver/Action.h lib/Driver/Action.cpp lib/Driver/Driver.cpp

Re: [PATCH] D15960: Don't build jobs for the same Action + ToolChain twice.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar added a comment. In http://reviews.llvm.org/D15960#324162, @echristo wrote: > So, how are you getting to the point where you're trying to create the same > action twice? > > -eric In the new CUDA world, we have the following graph, which I hope will render properly: foo.cu -->

Re: [PATCH] D15960: Don't build jobs for the same Action + ToolChain twice.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar added a comment. In http://reviews.llvm.org/D15960#324162, @echristo wrote: > So, how are you getting to the point where you're trying to create the same > action twice? > > -eric In the new CUDA world, we have the following graph, which I hope will render properly: foo.cu -->

r257413 - [CUDA] Reject values for --cuda-gpu-arch that are not of the form /sm_\d+/.

2016-01-11 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Mon Jan 11 17:27:13 2016 New Revision: 257413 URL: http://llvm.org/viewvc/llvm-project?rev=257413=rev Log: [CUDA] Reject values for --cuda-gpu-arch that are not of the form /sm_\d+/. Reviewers: tra Subscribers: cfe-commits, jhen, echristo Differential Revision:

r257407 - Move ownership of Action objects into Compilation.

2016-01-11 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Mon Jan 11 17:07:27 2016 New Revision: 257407 URL: http://llvm.org/viewvc/llvm-project?rev=257407=rev Log: Move ownership of Action objects into Compilation. Summary: This makes constructing Action graphs which are DAGs much simpler. It also just simplifies in general the

Re: [PATCH] D16079: [CUDA] Reject values for --cuda-gpu-arch that are not of the form /sm_\d+/.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar added a comment. Oops, I added the new error to the generated file in my objdir, rather than in the source tree. It worked fine until I rebuilt... Eric, please have a look at the change to DiagnosticDriverKinds.td. http://reviews.llvm.org/D16079

Re: [PATCH] D16078: Add an Action* member to InputInfo.

2016-01-11 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL257411: Add an Action* member to InputInfo. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D16078?vs=44539=44568#toc Repository: rL LLVM http://reviews.llvm.org/D16078

r257411 - Add an Action* member to InputInfo.

2016-01-11 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Mon Jan 11 17:15:21 2016 New Revision: 257411 URL: http://llvm.org/viewvc/llvm-project?rev=257411=rev Log: Add an Action* member to InputInfo. Summary: The CUDA toolchain needs to know which Actions created which InputInfos, because it needs to attach GPU archs to the

Re: [PATCH] D16082: [CUDA] Invoke ptxas and fatbinary during compilation.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 44586. jlebar added a comment. Add test checking that sm_XX gets translated to compute_YY correctly. http://reviews.llvm.org/D16082 Files: include/clang/Driver/Action.h include/clang/Driver/Options.td include/clang/Driver/ToolChain.h

[PATCH] D16097: [CUDA] Add explicit mapping from sm_XX to compute_YY.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: echristo, jhen, cfe-commits. This is used by D16082 when it invokes fatbinary. http://reviews.llvm.org/D16097 Files: include/clang/Driver/Action.h lib/Driver/Action.cpp test/Driver/cuda-bad-arch.cu

[PATCH] D16082: [CUDA] Invoke ptxas and fatbinary during compilation.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added reviewers: tra, echristo. jlebar added subscribers: jhen, cfe-commits. Previously we compiled CUDA device code to PTX assembly and embedded that asm as text in our host binary. Now we compile to PTX assembly and then invoke ptxas to assemble the PTX

[PATCH] D16081: [CUDA] Add test for compiling CUDA code with -S.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: jhen, cfe-commits. http://reviews.llvm.org/D16081 Files: test/Driver/cuda-options.cu test/Driver/cuda-output-asm.cu Index: test/Driver/cuda-output-asm.cu

[PATCH] D16079: [CUDA] Reject values for --cuda-gpu-arch that are not of the form /sm_\d+/.

2016-01-11 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: echristo, jhen, cfe-commits. http://reviews.llvm.org/D16079 Files: include/clang/Driver/Action.h lib/Driver/Action.cpp lib/Driver/Driver.cpp test/Driver/cuda-bad-arch.cu Index:

Re: [PATCH] D15936: Update code in buildCudaActions and BuildActions to latest idiom.

2016-01-08 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL257190: Update code in buildCudaActions and BuildActions to latest idiom. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D15936?vs=44158=44341#toc Repository: rL LLVM

r257190 - Update code in buildCudaActions and BuildActions to latest idiom.

2016-01-08 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Fri Jan 8 13:04:11 2016 New Revision: 257190 URL: http://llvm.org/viewvc/llvm-project?rev=257190=rev Log: Update code in buildCudaActions and BuildActions to latest idiom. Summary: Use llvm::any_of, llvm::find, etc. No functional changes. Reviewers: tra Subscribers:

Re: [PATCH] D15911: Move ownership of Action objects into Compilation.

2016-01-08 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 44379. jlebar marked 4 inline comments as done. jlebar added a comment. Address tra and dblaikie's review comments. http://reviews.llvm.org/D15911 Files: include/clang/Driver/Action.h include/clang/Driver/Compilation.h include/clang/Driver/Driver.h

Re: [PATCH] D15911: Move ownership of Action objects into Compilation.

2016-01-08 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: include/clang/Driver/Action.h:36 @@ -35,1 +35,3 @@ +/// +/// Actions are usually owned by a Compilation. class Action { tra wrote: > There's no API to pass ownership to Compilation explicitly, so the only way > for an

Re: [PATCH] D15960: Don't build jobs for the same Action + ToolChain twice.

2016-01-08 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 44377. jlebar added a dependency: D16013: Make Driver::BuildJobsForAction return an InputInfo, instead of using an outparam.. jlebar added a comment. Fixing bug caused by missing an outparam. Covered by tests in WIP CUDA+ptxas+fatbin patch. Depends on

Re: [PATCH] D15960: Don't build jobs for the same Action + ToolChain twice.

2016-01-08 Thread Justin Lebar via cfe-commits
jlebar added a comment. OK, this is now working, please have a look. I'm not sure if it's possible to write a test as-is, but I have a test for my mistake in my WIP CUDA patch. (Also this mistake is much harder to make after http://reviews.llvm.org/D16013.) http://reviews.llvm.org/D15960

[PATCH] D15974: [CUDA] Split out tests for unused-arg warnings from cuda-options.cu.

2016-01-07 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added a subscriber: cfe-commits. Trying to make this test a bit more manageable. http://reviews.llvm.org/D15974 Files: test/Driver/cuda-options.cu test/Driver/cuda-unused-arg-warning.cu Index:

Re: [PATCH] D15911: Switch Action and ActionList over to using std::shared_ptr.

2016-01-07 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 44272. jlebar marked 2 inline comments as done. jlebar added a comment. Address review comments. http://reviews.llvm.org/D15911 Files: include/clang/Driver/Action.h include/clang/Driver/Driver.h include/clang/Driver/Util.h lib/Driver/Action.cpp

Re: [PATCH] D15911: Move ownership of Action objects into Compilation.

2016-01-07 Thread Justin Lebar via cfe-commits
jlebar added a comment. Changed to move ownership into Compilation, as discussed earlier today. Please have a look. http://reviews.llvm.org/D15911 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

Re: [PATCH] D15911: Switch Action and ActionList over to using std::shared_ptr.

2016-01-07 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 44307. jlebar added a comment. Switch to maintaining ownership of the Actions within the Compilation. http://reviews.llvm.org/D15911 Files: include/clang/Driver/Action.h include/clang/Driver/Compilation.h include/clang/Driver/Driver.h

Re: [PATCH] D15960: Don't build jobs for the same Action + ToolChain twice.

2016-01-07 Thread Justin Lebar via cfe-commits
jlebar added a comment. This actually has a subtle issue not found with existing unit tests: BuildJobsForAction has an outparam and we don't set it on cache hit. Please hold off reviewing this until I fix the problem. http://reviews.llvm.org/D15960

Re: [PATCH] D15974: [CUDA] Split out tests for unused-arg warnings from cuda-options.cu.

2016-01-07 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL257142: [CUDA] Split out tests for unused-arg warnings from cuda-options.cu. (authored by jlebar). Changed prior to commit: http://reviews.llvm.org/D15974?vs=44270=44309#toc Repository: rL LLVM

r257142 - [CUDA] Split out tests for unused-arg warnings from cuda-options.cu.

2016-01-07 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Jan 7 21:33:04 2016 New Revision: 257142 URL: http://llvm.org/viewvc/llvm-project?rev=257142=rev Log: [CUDA] Split out tests for unused-arg warnings from cuda-options.cu. Summary: Trying to make this test a bit more manageable. Reviewers: tra Subscribers: cfe-commits

r257090 - Remove extraneous "Note t" in comment.

2016-01-07 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Jan 7 13:38:29 2016 New Revision: 257090 URL: http://llvm.org/viewvc/llvm-project?rev=257090=rev Log: Remove extraneous "Note t" in comment. Added in r167571. Modified: cfe/trunk/include/clang/Driver/ToolChain.h Modified: cfe/trunk/include/clang/Driver/ToolChain.h

Re: [PATCH] D15596: Add -L/path/to/cuda/lib if any of our inputs are CUDA files.

2016-01-06 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: lib/Driver/ToolChains.cpp:4125 @@ +4124,3 @@ + ArgStringList ) const { + if (DriverArgs.hasArg(options::OPT_nocudalib) || !CudaInstallation.isValid()) +return; tra wrote: > I'd rename

Re: [PATCH] D15858: Warn undeclared identifiers in CUDA kernel calls

2016-01-06 Thread Justin Lebar via cfe-commits
jlebar accepted this revision. jlebar added a comment. This revision is now accepted and ready to land. Looks sane to me, although I have no idea what I'm doing here; you should probably get someone else's approval. http://reviews.llvm.org/D15858

Re: [PATCH] D15596: Add -L/path/to/cuda/lib if any of our inputs are CUDA files.

2016-01-06 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 44178. jlebar added a comment. Split out the bits adding an arg to AddLinkerInputs into a separate patch, http://reviews.llvm.org/D15939. http://reviews.llvm.org/D15596 Files: include/clang/Driver/Options.td include/clang/Driver/ToolChain.h

<    3   4   5   6   7   8   9   >