summaryrefslogtreecommitdiffstats
path: root/Tests/CudaOnly/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* CUDA: Honor CUDA_RESOLVE_DEVICE_SYMBOLS for more target typesRobert Maynard2019-02-051-0/+11
| | | | | | | `CUDA_RESOLVE_DEVICE_SYMBOLS` can be used with shared, module, and executable target types. This relaxation is to allow for better interoperability with linkers that automatically do CUDA device symbol resolution and have no way to disable it.
* CUDA: Add test for device linking when host linking uses threadsRobert Maynard2018-10-241-1/+0
| | | | | | | | | Convert the `CudaOnly.LinkSystemDeviceLibraries` test to a new `Cuda.ProperDeviceLibraries` test. The former covered only the `cublas_device` library which is removed by CUDA 10. Extend the new test to also cover various cases of using threads. Issue: #18008
* CUDA: Add a test to verify device linking can handle circular depsRobert Maynard2018-07-171-0/+1
|
* VS: Add workaround for CUDA compiler PDB locationBrad King2018-04-131-0/+4
| | | | | | | | | The CUDA Toolkit Visual Studio Integration does not honor the `ClCompile.ProgramDataBaseFileName` field when telling `nvcc` how to invoke `cl`. Work around this problem by passing `-Xcompiler=-Fd...` ourselves through `AdditionalOptions`. Fixes: #17647
* CUDA: Pass more link libraries to device linkingRobert Maynard2018-03-281-0/+1
| | | | | | | | | | | | | | | | | Previously we dropped non-target items from the device link line because nvcc rejects paths to shared library files, and only with target items do we know the kind of library. However, this also prevents projects from linking to system-provided libraries like `cublas_device` that contain device code. Fix this by passing more link items to device linking. Items that are not file paths, such as `-lfoo`, can simply be passed unconditionally. Items that are targets known to be shared libraries can still be skipped. Items that are paths to library files can be passed directly if they end in `.a`. Otherwise, pass them using `-Xnvlink` to bypass nvcc's front-end. The nvlink tool knows to ignore shared library files. Issue: #16317
* CUDA: Allow -G to control device debuging on MSVC.Robert Maynard2018-01-111-1/+2
| | | | Fixes #17551
* CUDA: Static libraries can now explicitly resolve device symbolsRobert Maynard2017-04-261-0/+1
| | | | | | | If a static library has the property CUDA_RESOLVE_DEVICE_SYMBOLS enabled it will now perform the device link step. The normal behavior is to delay calling device link until the static library is consumed by a shared library or an executable.
* CUDA: Allow sources to be compiled to .ptx filesRobert Maynard2017-04-201-0/+1
| | | | | When the target property `CUDA_PTX_COMPILATION` is enabled CUDA OBJECT libraries will generate ptx files instead of object files.
* CUDA: Add tests to verify CUDA compiler works properly.Robert Maynard2016-11-141-0/+4