r291138 - [CUDA] Rename keywords used in macro so they don't conflict with MSVC.

2017-01-05 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Jan 5 10:54:11 2017 New Revision: 291138 URL: http://llvm.org/viewvc/llvm-project?rev=291138&view=rev Log: [CUDA] Rename keywords used in macro so they don't conflict with MSVC. Summary: MSVC seems to use "__in" and "__out" for its own purposes, so we have to pick differ

Re: [PATCH] D28320: [Driver] Driver changes to support CUDA compilation on Windows.

2017-01-06 Thread Justin Lebar via cfe-commits
That test should be updated to explicitly specify the triple, that should also fix the problem. I'll spin that change as soon as I can. I agree that using the triple to determine the expected directory layout is kind of bogus. I have no idea if cross-compiling CUDA is even going to work... Do w

Re: r291131 - [Driver] Driver changes to support CUDA compilation on Windows.

2017-01-06 Thread Justin Lebar via cfe-commits
e intended match here > clang.EXE: error: cannot find libdevice for sm_60. Provide path to different > CUDA installation via --cuda-path, or pass -nocudalib to build without > linking with libdevice. >^ > > On Thu, Jan 5, 2017 at 8:52 AM, Justin Lebar via cfe-commi

r278734 - [CUDA] Include CUDA headers before anything else.

2016-08-15 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Mon Aug 15 15:38:52 2016 New Revision: 278734 URL: http://llvm.org/viewvc/llvm-project?rev=278734&view=rev Log: [CUDA] Include CUDA headers before anything else. Summary: There's no point to --cuda-path if we then go and include /usr/include first. And if you install the rig

Re: [PATCH] D23340: [CUDA] Fix CUDA install version parsing.

2016-08-15 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL278733: [CUDA] Fix CUDA install version parsing. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D23340?vs=67438&id=68071#toc Repository: rL LLVM https://reviews.llvm.org/D23

Re: [PATCH] D23341: [CUDA] Include CUDA headers before anything else.

2016-08-15 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL278734: [CUDA] Include CUDA headers before anything else. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D23341?vs=67439&id=68072#toc Repository: rL LLVM https://reviews.llv

Re: [PATCH] D23241: Add the notion of deferred diagnostics.

2016-08-15 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL278735: Add the notion of deferred diagnostics. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D23241?vs=68063&id=68073#toc Repository: rL LLVM https://reviews.llvm.org/D232

Re: [PATCH] D23526: [CUDA] Collapsed offload actions should not be top-level jobs.

2016-08-15 Thread Justin Lebar via cfe-commits
jlebar added a comment. Wow, I have no idea if this is right. I can try to figure it out, but if sfantao can review, that's easier. Comment at: test/Driver/cuda-bindings.cu:10 @@ +9,3 @@ +// way. Instead we check whether we've generated a permanent name on +// device side whic

r278759 - [CUDA] Raise an error if a wrong-side call is codegen'ed.

2016-08-15 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Mon Aug 15 18:00:49 2016 New Revision: 278759 URL: http://llvm.org/viewvc/llvm-project?rev=278759&view=rev Log: [CUDA] Raise an error if a wrong-side call is codegen'ed. Summary: Some function calls in CUDA are allowed to appear in semantically-correct programs but are an err

Re: [PATCH] D23242: [CUDA] Raise an error if a wrong-side call is codegen'ed.

2016-08-15 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL278759: [CUDA] Raise an error if a wrong-side call is codegen'ed. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D23242?vs=67378&id=68103#toc Repository: rL LLVM https://rev

r278767 - [CUDA] Fix "declared here" note on deferred wrong-side errors.

2016-08-15 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Mon Aug 15 19:48:21 2016 New Revision: 278767 URL: http://llvm.org/viewvc/llvm-project?rev=278767&view=rev Log: [CUDA] Fix "declared here" note on deferred wrong-side errors. Previously we weren't deferring these "declared here" notes, which is obviously wrong. Modified:

[PATCH] D23627: [CUDA] Improve handling of math functions.

2016-08-17 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added a subscriber: cfe-commits. A bunch of related changes here to our CUDA math headers. - The second arg to nexttoward is a double (well, technically, long double, but we don't have that), not a float. - Add a forward-declar

Re: [PATCH] D23627: [CUDA] Improve handling of math functions.

2016-08-17 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: clang/lib/Headers/__clang_cuda_cmath.h:125-133 @@ -122,8 +124,11 @@ __DEVICE__ float modf(float __x, float *__iptr) { return ::modff(__x, __iptr); } -__DEVICE__ float nexttoward(float __from, float __to) { +__DEVICE__ float nexttoward(fl

Re: [PATCH] D23627: [CUDA] Improve handling of math functions.

2016-08-18 Thread Justin Lebar via cfe-commits
jlebar added a comment. These changes have always been kind of scary. tra tested this against Thrust all combinations of CUDA 7.0/7.5, c++98/11, libc++/libstdc++{4.8.5/4.9.3,5.3.0}. So we should be good here. I hope. https://reviews.llvm.org/D23627 ___

r279140 - [CUDA] Improve handling of math functions.

2016-08-18 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Aug 18 15:43:13 2016 New Revision: 279140 URL: http://llvm.org/viewvc/llvm-project?rev=279140&view=rev Log: [CUDA] Improve handling of math functions. Summary: A bunch of related changes here to our CUDA math headers. - The second arg to nexttoward is a double (well, tec

Re: [PATCH] D23627: [CUDA] Improve handling of math functions.

2016-08-18 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL279140: [CUDA] Improve handling of math functions. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D23627?vs=68427&id=68600#toc Repository: rL LLVM https://reviews.llvm.org/D

[PATCH] D24407: [CUDA] Make __GCC_ATOMIC_XXX_LOCK_FREE macros the same on host/device.

2016-09-09 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: jhen, cfe-commits. This fixes a bug where we were unable to compile the following CUDA file with libstdc++ (didn't try libc++): #include void foo() { std::shared_future x; } The problem is that only defin

r281089 - [CUDA] Make __GCC_ATOMIC_XXX_LOCK_FREE macros the same on host/device.

2016-09-09 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Fri Sep 9 15:35:43 2016 New Revision: 281089 URL: http://llvm.org/viewvc/llvm-project?rev=281089&view=rev Log: [CUDA] Make __GCC_ATOMIC_XXX_LOCK_FREE macros the same on host/device. Summary: This fixes a bug where we were unable to compile the following CUDA file with libstd

Re: [PATCH] D24407: [CUDA] Make __GCC_ATOMIC_XXX_LOCK_FREE macros the same on host/device.

2016-09-09 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL281089: [CUDA] Make __GCC_ATOMIC_XXX_LOCK_FREE macros the same on host/device. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D24407?vs=70857&id=70895#toc Repository: rL LLVM

Re: [PATCH] D24522: [CUDA] Do not merge CUDA target attributes.

2016-09-13 Thread Justin Lebar via cfe-commits
jlebar accepted this revision. jlebar added a comment. This revision is now accepted and ready to land. Yay, this is great. Comment at: test/SemaCUDA/target_attr_inheritance.cu:4 @@ +3,3 @@ +// REQUIRES: x86-registered-target +// REQUIRES: nvptx-registered-target + -

[PATCH] D24571: [CUDA] Disallow overloading destructors.

2016-09-14 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: rsmith. jlebar added subscribers: tra, cfe-commits. We'd attempted to allow this, but turns out we were doing a very bad job. :) Making this work properly would be a giant change in clang. For example, we'd need to make CXXRecordDecl::getDe

[PATCH] D24573: [CUDA] Do a better job at detecting wrong-side calls.

2016-09-14 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: rsmith. jlebar added subscribers: tra, cfe-commits. Move CheckCUDACall from ActOnCallExpr and BuildDeclRefExpr to DiagnoseUseOfDecl. This lets us catch some edge cases we were missing, specifically around class operators. This necessitates a

[PATCH] D24581: [CUDA] Add test checking our ability to take a function pointer to a __global__ function on the host side.

2016-09-14 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added a subscriber: cfe-commits. This functionality is used by Thrust. https://reviews.llvm.org/D24581 Files: clang/test/SemaCUDA/reference-to-kernel-fn.cu Index: clang/test/SemaCUDA/reference-to-kernel-fn.cu =

[PATCH] D24588: [CUDA] Make __clang_cuda_cmath.h compatible with libc++.

2016-09-14 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added a subscriber: cfe-commits. We need to add a bunch more "using"s, which weren't necessary with libstdc++. Once this is in I can check in a test to the test-suite. https://reviews.llvm.org/D24588 Files: clang/lib/Headers/_

[PATCH] D24590: [test-suite] [CUDA] Update README.

2016-09-14 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added a subscriber: cfe-commits. Fix typo (s/Externals/External/), and mention cuda-tests-simple. https://reviews.llvm.org/D24590 Files: External/CUDA/README Index: External/CUDA/README

r281544 - [CUDA] Make __clang_cuda_cmath.h compatible with libc++.

2016-09-14 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Wed Sep 14 16:50:14 2016 New Revision: 281544 URL: http://llvm.org/viewvc/llvm-project?rev=281544&view=rev Log: [CUDA] Make __clang_cuda_cmath.h compatible with libc++. Summary: We need to add a bunch more "using"s, which weren't necessary with libstdc++. Once this is in I c

r281543 - [CUDA] Add test checking our ability to take a function pointer to a __global__ function on the host side.

2016-09-14 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Wed Sep 14 16:50:11 2016 New Revision: 281543 URL: http://llvm.org/viewvc/llvm-project?rev=281543&view=rev Log: [CUDA] Add test checking our ability to take a function pointer to a __global__ function on the host side. Summary: This functionality is used by Thrust. Reviewer

Re: [PATCH] D24581: [CUDA] Add test checking our ability to take a function pointer to a __global__ function on the host side.

2016-09-14 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL281543: [CUDA] Add test checking our ability to take a function pointer to a… (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D24581?vs=71423&id=71446#toc Repository: rL LLVM

Re: [PATCH] D24588: [CUDA] Make __clang_cuda_cmath.h compatible with libc++.

2016-09-14 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL281544: [CUDA] Make __clang_cuda_cmath.h compatible with libc++. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D24588?vs=71443&id=71447#toc Repository: rL LLVM https://revi

Re: [PATCH] D24590: [test-suite] [CUDA] Update README.

2016-09-14 Thread Justin Lebar via cfe-commits
jlebar marked an inline comment as done. jlebar added a comment. Will add. Thank you for the reviews! https://reviews.llvm.org/D24590 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D24590: [test-suite] [CUDA] Update README.

2016-09-14 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL281552: [test-suite] [CUDA] Update README. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D24590?vs=71445&id=71457#toc Repository: rL LLVM https://reviews.llvm.org/D24590 F

[PATCH] D24640: [CUDA] Don't try to run sanitizers on NVPTX.

2016-09-15 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: kcc. jlebar added subscribers: jhen, tra, cfe-commits. Sanitizers aren't supported on NVPTX -- don't try to run them. This lets you e.g. pass -fsanitize=address and get asan on your host code. https://reviews.llvm.org/D24640 Files: clang/

r281680 - [CUDA] Don't try to run sanitizers on NVPTX.

2016-09-15 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Sep 15 18:44:13 2016 New Revision: 281680 URL: http://llvm.org/viewvc/llvm-project?rev=281680&view=rev Log: [CUDA] Don't try to run sanitizers on NVPTX. Summary: Sanitizers aren't supported on NVPTX -- don't try to run them. This lets you e.g. pass -fsanitize=address and

Re: [PATCH] D24640: [CUDA] Don't try to run sanitizers on NVPTX.

2016-09-15 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL281680: [CUDA] Don't try to run sanitizers on NVPTX. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D24640?vs=71572&id=71573#toc Repository: rL LLVM https://reviews.llvm.org

r292694 - [NVPTX] Auto-upgrade some NVPTX intrinsics to LLVM target-generic code.

2017-01-20 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Fri Jan 20 19:00:32 2017 New Revision: 292694 URL: http://llvm.org/viewvc/llvm-project?rev=292694&view=rev Log: [NVPTX] Auto-upgrade some NVPTX intrinsics to LLVM target-generic code. Summary: Specifically, we upgrade llvm.nvvm.: * brev{32,64} * clz.{i,ll} * popc.{i,ll}

r293097 - [CodeGen] [CUDA] Add the ability set default attrs on functions in linked modules.

2017-01-25 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Wed Jan 25 15:29:48 2017 New Revision: 293097 URL: http://llvm.org/viewvc/llvm-project?rev=293097&view=rev Log: [CodeGen] [CUDA] Add the ability set default attrs on functions in linked modules. Summary: Now when you ask clang to link in a bitcode module, you can tell it to

r295609 - [CUDA] Don't pass -stack-protector to NVPTX compilations.

2017-02-19 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Sun Feb 19 13:05:32 2017 New Revision: 295609 URL: http://llvm.org/viewvc/llvm-project?rev=295609&view=rev Log: [CUDA] Don't pass -stack-protector to NVPTX compilations. We can't support stack-protector on NVPTX because NVPTX doesn't expose a stack to the compiler! Fixes PR3

[PATCH] D25403: [CUDA] Mark __libcpp_{isnan, isinf, isfinite} as constexpr.

2016-11-15 Thread Justin Lebar via cfe-commits
jlebar added a comment. Thanks for the review. Comment at: libcxx/test/libcxx/numerics/c.math/constexpr-fns.pass.cpp:17 +// true constexpr-ness. + +#include EricWF wrote: > Does GCC offer these as contexpr? If not this needs a `// XFAIL: gcc` Looks like the re

[PATCH] D25403: [CUDA] Mark __libcpp_{isnan, isinf, isfinite} as constexpr.

2016-11-15 Thread Justin Lebar via cfe-commits
jlebar marked 6 inline comments as done. jlebar added a comment. Capturing an IRC conversation: > **EricWF** jlebar: Did you test this patch with older Clangs w/o constexpr > builtins? > **jlebar** EricWF, Do you mean, did I test the test, or did I test that the > non-test change does what I n

[libcxx] r287012 - [CUDA] Mark __libcpp_{isnan, isinf, isfinite} as constexpr.

2016-11-15 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Tue Nov 15 13:15:57 2016 New Revision: 287012 URL: http://llvm.org/viewvc/llvm-project?rev=287012&view=rev Log: [CUDA] Mark __libcpp_{isnan,isinf,isfinite} as constexpr. Summary: This makes these functions available on host and device, which is necessary to compile for the d

[PATCH] D25403: [CUDA] Mark __libcpp_{isnan, isinf, isfinite} as constexpr.

2016-11-15 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL287012: [CUDA] Mark __libcpp_{isnan,isinf,isfinite} as constexpr. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D25403?vs=77271&id=78041#toc Repository: rL LLVM https://rev

[libcxx] r287041 - [libcxx] Mark xonstexpr-fns.pass.cpp as XFAIL: gcc.

2016-11-15 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Tue Nov 15 16:03:29 2016 New Revision: 287041 URL: http://llvm.org/viewvc/llvm-project?rev=287041&view=rev Log: [libcxx] Mark xonstexpr-fns.pass.cpp as XFAIL: gcc. This fails with gcc because __builtin_isnan and friends, which libcpp_isnan and friends call, are not themselves

[PATCH] D26776: [CUDA] Initialize our header search using the host triple.

2016-11-16 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added a subscriber: cfe-commits. This used to work because system headers are found in a (somewhat) predictable set of locations on Linux. But this is not the case on MacOS; without this change, we don't look in the right places f

[PATCH] D26777: [CUDA] Use the right section and constant names for fatbins when compiling for macos.

2016-11-16 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added a subscriber: cfe-commits. https://reviews.llvm.org/D26777 Files: clang/lib/CodeGen/CGCUDANV.cpp Index: clang/lib/CodeGen/CGCUDANV.cpp === --- clang/lib/Cod

[PATCH] D26780: [CUDA] Wrapper header changes necessary to support MacOS.

2016-11-16 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added a subscriber: cfe-commits. https://reviews.llvm.org/D26780 Files: clang/lib/Headers/__clang_cuda_cmath.h clang/lib/Headers/__clang_cuda_runtime_wrapper.h Index: clang/lib/Headers/__clang_cuda_runtime_wrapper.h

[PATCH] D26774: [CUDA] Driver changes to support CUDA compilation on MacOS.

2016-11-17 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: clang/lib/Driver/Driver.cpp:479 +// the device toolchain we create depends on both. +ToolChain *&CudaTC = ToolChains[CudaTriple.str() + "/" + HostTriple.str()]; +if (!CudaTC) { sfantao wrote: > I am not sure I

[PATCH] D26774: [CUDA] Driver changes to support CUDA compilation on MacOS.

2016-11-17 Thread Justin Lebar via cfe-commits
jlebar marked 2 inline comments as done. jlebar added inline comments. Comment at: clang/lib/Driver/Driver.cpp:3650-3654 + + // Intentionally omitted from the switch above: llvm::Triple::CUDA. CUDA + // compiles always need two toolchains, the CUDA toolchain and the host + //

r287287 - [CUDA] Use the right section and constant names for fatbins when compiling for macos.

2016-11-17 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Nov 17 18:41:31 2016 New Revision: 287287 URL: http://llvm.org/viewvc/llvm-project?rev=287287&view=rev Log: [CUDA] Use the right section and constant names for fatbins when compiling for macos. Reviewers: tra Subscribers: cfe-commits Differential Revision: https://revi

[PATCH] D26774: [CUDA] Driver changes to support CUDA compilation on MacOS.

2016-11-17 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 rL287285: [CUDA] Driver changes to support CUDA compilation on MacOS. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D26774?vs=78286&id=78

r287285 - [CUDA] Driver changes to support CUDA compilation on MacOS.

2016-11-17 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Nov 17 18:41:22 2016 New Revision: 287285 URL: http://llvm.org/viewvc/llvm-project?rev=287285&view=rev Log: [CUDA] Driver changes to support CUDA compilation on MacOS. Summary: Compiling CUDA device code requires us to know the host toolchain, because CUDA device-side com

r287286 - [CUDA] Initialize our header search using the host triple.

2016-11-17 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Nov 17 18:41:27 2016 New Revision: 287286 URL: http://llvm.org/viewvc/llvm-project?rev=287286&view=rev Log: [CUDA] Initialize our header search using the host triple. Summary: This used to work because system headers are found in a (somewhat) predictable set of locations

r287288 - [CUDA] Wrapper header changes necessary to support MacOS.

2016-11-17 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Nov 17 18:41:35 2016 New Revision: 287288 URL: http://llvm.org/viewvc/llvm-project?rev=287288&view=rev Log: [CUDA] Wrapper header changes necessary to support MacOS. Reviewers: tra Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D26780 Modified

[PATCH] D26776: [CUDA] Initialize our header search using the host triple.

2016-11-17 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL287286: [CUDA] Initialize our header search using the host triple. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D26776?vs=78290&id=78436#toc Repository: rL LLVM https://re

[PATCH] D26777: [CUDA] Use the right section and constant names for fatbins when compiling for macos.

2016-11-17 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL287287: [CUDA] Use the right section and constant names for fatbins when compiling for… (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D26777?vs=78291&id=78437#toc Repository:

[PATCH] D26780: [CUDA] Wrapper header changes necessary to support MacOS.

2016-11-17 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL287288: [CUDA] Wrapper header changes necessary to support MacOS. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D26780?vs=78298&id=78438#toc Repository: rL LLVM https://rev

r287292 - [CUDA] Attempt to fix test failures in cuda-macos-includes.cu.

2016-11-17 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Thu Nov 17 19:11:32 2016 New Revision: 287292 URL: http://llvm.org/viewvc/llvm-project?rev=287292&view=rev Log: [CUDA] Attempt to fix test failures in cuda-macos-includes.cu. Run clang -cc1 -E instead of -S, in an attempt to make this test work cross-platform. Modified:

[clang-tools-extra] r289627 - [ClangTidy] Add new performance-type-promotion-in-math-fn check.

2016-12-13 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Tue Dec 13 21:15:01 2016 New Revision: 289627 URL: http://llvm.org/viewvc/llvm-project?rev=289627&view=rev Log: [ClangTidy] Add new performance-type-promotion-in-math-fn check. Summary: This checks for calls to double-precision math.h with single-precision arguments. For exa

[clang-tools-extra] r289637 - [clang-tidy] Suggest including if necessary in type-promotion-in-math-fn-check.

2016-12-13 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Wed Dec 14 00:52:23 2016 New Revision: 289637 URL: http://llvm.org/viewvc/llvm-project?rev=289637&view=rev Log: [clang-tidy] Suggest including if necessary in type-promotion-in-math-fn-check. Reviewers: alexfh Subscribers: JDevlieghere, cfe-commits Differential Revision:

[libcxx] r301132 - Add missing acquire_load to call_once overload.

2017-04-23 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Sun Apr 23 11:58:48 2017 New Revision: 301132 URL: http://llvm.org/viewvc/llvm-project?rev=301132&view=rev Log: Add missing acquire_load to call_once overload. Summary: Seemed to have been overlooked in D24028. This bug was found and brought to my attention by Paul Wankadia.

Re: r261774 - Bail on compilation as soon as a job fails.

2017-05-15 Thread Justin Lebar via cfe-commits
;> >>> >>> We had a test, but this commit changed that as well (I suppose it could >>> have been better documented). >>> >>> How easily could this be restricted to only affect CUDA jobs? >> >> >> If this gets reverted, the clang-cl PCH code

[PATCH] D25702: [CUDA] Emit errors for wrong-side calls made on the same line as non-wrong-side calls.

2016-10-17 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added subscribers: cfe-commits, rnk. This fixes two related bugs: 1. Previously, if you had a non-wrong side call at some source code location L, we wouldn't emit errors for wrong-side calls that appeared at L. 2. We'd only emit

[PATCH] D25704: [CUDA] When we emit an error that might have been deferred, also print a callstack.

2016-10-17 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: rnk. jlebar added subscribers: tra, cfe-commits. Previously, when you did something not allowed in a host+device function and then caused it to be codegen'ed, we would print out an error telling you that you did something bad, but we wouldn't

[PATCH] D25703: [AST] Add CanonicalDeclPtr.

2016-10-17 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: rnk. jlebar added subscribers: tra, cfe-commits. CanonicalDeclPtr is just like a T*, except it calls T::getCanonicalDecl() on construction. This is useful as the key in a "set of canonical Decls" -- it's much less error-prone than calling get

[PATCH] D25711: [Basic] unique_ptr-ify SourceManager::MacroArgsCacheMap (NFC)

2016-10-17 Thread Justin Lebar via cfe-commits
jlebar accepted this revision. jlebar added a comment. This revision is now accepted and ready to land. The great thing about unique_ptr is, if it compiles, we're probably good. :) https://reviews.llvm.org/D25711 ___ cfe-commits mailing list cfe-co

[PATCH] D25403: [CUDA] Mark __libcpp_{isnan, isinf, isfinite} as constexpr.

2016-10-17 Thread Justin Lebar via cfe-commits
jlebar added a comment. > The tests should be runnable with lit. I generally just do an in-tree build > and run make check-libcxx. @EricWF , what's the recommended way of running > the tests from an out-of-tree build? Things seem broken at the moment with clang from tip of tree. I did a clean

[PATCH] D25403: [CUDA] Mark __libcpp_{isnan, isinf, isfinite} as constexpr.

2016-10-18 Thread Justin Lebar via cfe-commits
jlebar added a comment. Thank you, Marshall. In https://reviews.llvm.org/D25403#572998, @mclow.lists wrote: > My build setup is similar to yours (on Mac OS X): > > cd $LLVM_BUILD ; rm -rf libcxx ; mkdir libcxx ; cd libcxx > CXX=$LLVM_BIN/clang++ cmake -DLLVM_PATH=$LLVM/llvm > -DLIBCXX_CXX_

[PATCH] D25403: [CUDA] Mark __libcpp_{isnan, isinf, isfinite} as constexpr.

2016-10-18 Thread Justin Lebar via cfe-commits
jlebar added a comment. In https://reviews.llvm.org/D25403#573666, @mclow.lists wrote: > Yesterday and today is the first time in a while that clang has been > seriously broken for more than an hour or so. > I'm not inclined to worry about it yet. Oh, awesome. That sounds good to me. The qu

[PATCH] D25755: [CUDA] Rework tests now that we emit deferred diagnostics during sema. Test-only change.

2016-10-18 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: tra. jlebar added a subscriber: cfe-commits. Previously we had to split out a lot of our tests into a test that checked only immediate errors and a test that checked only deferred errors. This was because, if you emitted any immediate errors,

[PATCH] D25755: [CUDA] Rework tests now that we emit deferred diagnostics during sema. Test-only change.

2016-10-18 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 75085. jlebar added a comment. Remove line that should be added in a different patch. https://reviews.llvm.org/D25755 Files: clang/test/PCH/pragma-cuda-force-host-device.cu clang/test/Parser/cuda-force-host-device-templates.cu clang/test/SemaCUDA/devic

r284553 - [CUDA] Rework tests now that we emit deferred diagnostics during sema. Test-only change.

2016-10-18 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Tue Oct 18 19:06:49 2016 New Revision: 284553 URL: http://llvm.org/viewvc/llvm-project?rev=284553&view=rev Log: [CUDA] Rework tests now that we emit deferred diagnostics during sema. Test-only change. Summary: Previously we had to split out a lot of our tests into a test th

[PATCH] D25755: [CUDA] Rework tests now that we emit deferred diagnostics during sema. Test-only change.

2016-10-18 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL284553: [CUDA] Rework tests now that we emit deferred diagnostics during sema. Test… (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D25755?vs=75085&id=75099#toc Repository:

[PATCH] D25702: [CUDA] Emit errors for wrong-side calls made on the same line as non-wrong-side calls.

2016-10-19 Thread Justin Lebar via cfe-commits
jlebar added a comment. In https://reviews.llvm.org/D25702#574289, @rnk wrote: > lgtm > > I'm assuming you're going to follow this up with CanonicalDeclPtr usage. Yes, that's in https://reviews.llvm.org/D25704. https://reviews.llvm.org/D25702 ___

[PATCH] D25704: [CUDA] When we emit an error that might have been deferred, also print a callstack.

2016-10-19 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 75178. jlebar marked 2 inline comments as done. jlebar added a comment. Address rnk's comments. https://reviews.llvm.org/D25704 Files: clang/include/clang/Basic/DiagnosticSemaKinds.td clang/include/clang/Sema/Sema.h clang/lib/Sema/SemaCUDA.cpp clang/

[PATCH] D25704: [CUDA] When we emit an error that might have been deferred, also print a callstack.

2016-10-19 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: clang/include/clang/Sema/Sema.h:9292 + llvm::DenseMap, + /* Callees = */ llvm::SetVector> + CUDACallGraph; rnk wrote: > Rather than having a custom key type, maybe it would be better to phrase this

[PATCH] D25704: [CUDA] When we emit an error that might have been deferred, also print a callstack.

2016-10-19 Thread Justin Lebar via cfe-commits
jlebar marked 2 inline comments as done. jlebar added a comment. I'm going to submit this and send a patch to reuse FunctionDeclAndLoc. But I'm happy to add a comment about the note as well. Comment at: clang/include/clang/Basic/DiagnosticSemaKinds.td:6707 +def note_called_

[PATCH] D25704: [CUDA] When we emit an error that might have been deferred, also print a callstack.

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

r284643 - [CUDA] Emit errors for wrong-side calls made on the same line as non-wrong-side calls.

2016-10-19 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Wed Oct 19 16:03:38 2016 New Revision: 284643 URL: http://llvm.org/viewvc/llvm-project?rev=284643&view=rev Log: [CUDA] Emit errors for wrong-side calls made on the same line as non-wrong-side calls. Summary: This fixes two related bugs: 1) Previously, if you had a non-wrong

r284644 - [AST] Add CanonicalDeclPtr.

2016-10-19 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Wed Oct 19 16:03:42 2016 New Revision: 284644 URL: http://llvm.org/viewvc/llvm-project?rev=284644&view=rev Log: [AST] Add CanonicalDeclPtr. Summary: CanonicalDeclPtr is just like a T*, except it calls T::getCanonicalDecl() on construction. This is useful as the key in a "set

[PATCH] D25703: [AST] Add CanonicalDeclPtr.

2016-10-19 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL284644: [AST] Add CanonicalDeclPtr. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D25703?vs=74911&id=75222#toc Repository: rL LLVM https://reviews.llvm.org/D25703 Files:

[PATCH] D25702: [CUDA] Emit errors for wrong-side calls made on the same line as non-wrong-side calls.

2016-10-19 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL284643: [CUDA] Emit errors for wrong-side calls made on the same line as non-wrong-side… (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D25702?vs=74910&id=75220#toc Repository:

r284647 - [CUDA] When we emit an error that might have been deferred, also print a callstack.

2016-10-19 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Wed Oct 19 16:15:01 2016 New Revision: 284647 URL: http://llvm.org/viewvc/llvm-project?rev=284647&view=rev Log: [CUDA] When we emit an error that might have been deferred, also print a callstack. Summary: Previously, when you did something not allowed in a host+device functi

[PATCH] D25704: [CUDA] When we emit an error that might have been deferred, also print a callstack.

2016-10-19 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL284647: [CUDA] When we emit an error that might have been deferred, also print a… (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D25704?vs=75178&id=75226#toc Repository: rL L

[PATCH] D25797: [CUDA] Use FunctionDeclAndLoc for the Sema::LocsWithCUDACallDiags hashtable.

2016-10-19 Thread Justin Lebar via cfe-commits
jlebar created this revision. jlebar added a reviewer: rnk. jlebar added a subscriber: cfe-commits. NFC https://reviews.llvm.org/D25797 Files: clang/include/clang/Sema/Sema.h clang/lib/Sema/SemaCUDA.cpp Index: clang/lib/Sema/SemaCUDA.cpp ===

[PATCH] D25796: [CUDA] Create __host__ and device variants of standard allocator declarations.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar added a comment. Is it not possible to write a testcase for this? https://reviews.llvm.org/D25796 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D25647: [clang-tidy] Don't use a SmallSetVector of an enum.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar added a comment. Hi, friendly ping? This trivial patch is the only blocker remaining before I can land https://reviews.llvm.org/D25648, which is the first part of my Grand Set Refactoring (see mail to llvm-dev about a week ago). Repository: rL LLVM https://reviews.llvm.org/D25647

[PATCH] D25647: [clang-tidy] Don't use a SmallSetVector of an enum.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar added a comment. Thank you very much for the review! Comment at: clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp:103 + auto &Members = ClassWithSpecialMembers[ID]; + if (find(Members, Kind) == Members.end()) Members.push_back(Kin

[PATCH] D25647: [clang-tidy] Don't use a SmallSetVector of an enum.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar added a comment. Thank you very much for the review! Comment at: clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp:103 + auto &Members = ClassWithSpecialMembers[ID]; + if (find(Members, Kind) == Members.end()) Members.push_back(Kin

[PATCH] D25647: [clang-tidy] Don't use a SmallSetVector of an enum.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar updated this revision to Diff 75443. jlebar marked 5 inline comments as done. jlebar added a comment. Adjust formatting, write out type of 'auto'. https://reviews.llvm.org/D25647 Files: clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp clang-tools-extra/c

[PATCH] D25647: [clang-tidy] Don't use a SmallSetVector of an enum.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp:103 + auto &Members = ClassWithSpecialMembers[ID]; + if (find(Members, Kind) == Members.end()) Members.push_back(Kind); +} jleb

[PATCH] D25796: [CUDA] Create __host__ and device variants of standard allocator declarations.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: lib/Sema/SemaExprCXX.cpp:2596 - QualType FnType = Context.getFunctionType(Return, Params, EPI); - FunctionDecl *Alloc = -FunctionDecl::Create(Context, GlobalCtx, SourceLocation(), - SourceLocation(), Name,

[PATCH] D25845: [CUDA] Ignore implicit target attributes during function template instantiation.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar added inline comments. Comment at: test/SemaCUDA/function-template-overload.cu:62 +template constexpr T overload_ce_implicit_hd(T a) { return a+1; } +// expected-note@-1 3 {{candidate template ignored: target attributes do not match}} + Oh, I didn't know

[PATCH] D25796: [CUDA] Create __host__ and device variants of standard allocator declarations.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar accepted this revision. jlebar added inline comments. This revision is now accepted and ready to land. Comment at: lib/Sema/SemaExprCXX.cpp:2596 - QualType FnType = Context.getFunctionType(Return, Params, EPI); - FunctionDecl *Alloc = -FunctionDecl::Create(Context,

r284869 - [CUDA] Use FunctionDeclAndLoc for the Sema::LocsWithCUDACallDiags hashtable.

2016-10-21 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Fri Oct 21 15:08:52 2016 New Revision: 284869 URL: http://llvm.org/viewvc/llvm-project?rev=284869&view=rev Log: [CUDA] Use FunctionDeclAndLoc for the Sema::LocsWithCUDACallDiags hashtable. Summary: NFC Reviewers: rnk Subscribers: cfe-commits Differential Revision: https://

[PATCH] D25797: [CUDA] Use FunctionDeclAndLoc for the Sema::LocsWithCUDACallDiags hashtable.

2016-10-21 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL284869: [CUDA] Use FunctionDeclAndLoc for the Sema::LocsWithCUDACallDiags hashtable. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D25797?vs=75231&id=75474#toc Repository: r

[clang-tools-extra] r284873 - [clang-tidy] Don't use a SmallSetVector of an enum.

2016-10-21 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Fri Oct 21 15:13:39 2016 New Revision: 284873 URL: http://llvm.org/viewvc/llvm-project?rev=284873&view=rev Log: [clang-tidy] Don't use a SmallSetVector of an enum. Summary: This doesn't work after converting SmallSetVector to use DenseSet. Instead we can just use a SmallVect

[PATCH] D25647: [clang-tidy] Don't use a SmallSetVector of an enum.

2016-10-21 Thread Justin Lebar via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL284873: [clang-tidy] Don't use a SmallSetVector of an enum. (authored by jlebar). Changed prior to commit: https://reviews.llvm.org/D25647?vs=75443&id=75478#toc Repository: rL LLVM https://reviews.l

[PATCH] D25647: [clang-tidy] Don't use a SmallSetVector of an enum.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar added a comment. Thank you for the reviews, everyone! Repository: rL LLVM https://reviews.llvm.org/D25647 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D25845: [CUDA] Ignore implicit target attributes during function template instantiation.

2016-10-21 Thread Justin Lebar via cfe-commits
jlebar added a comment. > This patch changes the way we match target attributes of base template vs > attributes used in explicit instantiation or specialization so that only > explicitly specified attributes are considered. Another question about this: When we have something inside of the for

r284882 - [CUDA] Simplify some repeated diagnostic expectations in CUDA tests.

2016-10-21 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Fri Oct 21 15:50:47 2016 New Revision: 284882 URL: http://llvm.org/viewvc/llvm-project?rev=284882&view=rev Log: [CUDA] Simplify some repeated diagnostic expectations in CUDA tests. Instead of repeating the diagnostic, use "expected-note N". Test-only change. Modified: c

r284887 - Switch SmallSetVector to use DenseSet when it overflows its inline space.

2016-10-21 Thread Justin Lebar via cfe-commits
Author: jlebar Date: Fri Oct 21 16:45:01 2016 New Revision: 284887 URL: http://llvm.org/viewvc/llvm-project?rev=284887&view=rev Log: Switch SmallSetVector to use DenseSet when it overflows its inline space. Summary: SetVector already used DenseSet, but SmallSetVector used std::set. This leads to

<    1   2   3   4   5   6   7   8   9   >