+ for all CUDA versions starting from 7.0
+ add missing functions
+ sync with HIP
+ update CUDA_Runtime_API_functions_supported_by_HIP.md
+ update affected tests
+ fix typos
+ formatting, annotating
Repeats clang's '--cuda-path' option.
[Reason]
In case of absence of any other clang's options setting '-cuda-path' allows not to specify separator '--' before clang's '--cuda-path'.
+ Tests and scripts are updated accordingly.
[Reasons]
+ We don't compile kernel code at least for now as HIP kernel syntax is almost equal CUDA's;
+ clang always includes PTX in its binaries, so e.g. a binary compiled with --cuda-gpu-arch= would be forwards-compatible with e.g. sm_35 GPUs.
+ Due to latest Windows SDK implementation based on c++14 features, '-std+c++14' is a must;
+ Doesn't affect older versions of MSVC 2017, 2015 (the latest supported is MSVC 2015);
+ On linux still '-std=c++11' is a must;
+ Exclude '-std=' from lit config.
+ Just do load_config for lit.site.cfg earlier in lit.cfg to get initialized cuda_version
+ Remove lit.cfg.in for CMake variables substitution
+ Return back lit.cfg
+ Exclude CUDA 9.0 tests if CUDA < 9.0
+ Report CUDA version before running tests
+ Add lit.cfg.in for CMake variables substitution to now generated lit.cfg
+ Exclude lit.cfg
+ Exclude CUDA 9.0 tests if CUDA < 9.0
+ Report CUDA version before running tests
+ cuSPARSE is supported up to CUDA 10.0
+ cuSPARSE_08 test (CUDA 10.0)
+ update CUSPARSE_API_supported_by_HIP.md
+ lit: add a rule for CUDA 10.0 tests excluding
Due to support of cuRAND headers.
+ compound test on all headers is added;
+ missing entities are added with updating the doc;
+ a couple cuRAND tests are added (https://github.com/ROCmSoftwarePlatform/rocRAND/tree/master/benchmark):
- the following CUDA entities are still unsupported by hipRAND:
curandMakeMTGP32Constants
curandMakeMTGP32KernelState
curandGetDirectionVectors32
curandDirectionVectorSet_t
CURAND_DIRECTION_VECTORS_32_JOEKUO6
curandStateSobol64_t
curandStateScrambledSobol64_t
curandGenerateLongLong
- and the following - by HIP:
cudaRuntimeGetVersion
- those entities are handled by CHECK-NOT directive for now.
All checks should not occur in input file for FileCheck. The issue found on CHECK-NOT.
Change removes all lit checks in the hipified file based on regexp, and the resulted stdout is fed as stdin for FileCheck.