[CUDA][OPENMP][NVPTX]Improve logic of the debug info support.
authorAlexey Bataev <a.bataev@hotmail.com>
Wed, 12 Dec 2018 14:52:27 +0000 (14:52 +0000)
committerAlexey Bataev <a.bataev@hotmail.com>
Wed, 12 Dec 2018 14:52:27 +0000 (14:52 +0000)
commitc92fc3c8bca3c1f8ffdd3aa7606061927d64b940
treeee7faba7a71d1b6f6efc250475084fb5a455a0cb
parentf7dc77e9424f625863b7ee2810c44d629a6e5a3b
[CUDA][OPENMP][NVPTX]Improve logic of the debug info support.

Summary:
Added support for the -gline-directives-only option + fixed logic of the
debug info for CUDA devices. If optimization level is O0, then options
--[no-]cuda-noopt-device-debug do not affect the debug info level. If
the optimization level is >O0, debug info options are used +
--no-cuda-noopt-device-debug is used or no --cuda-noopt-device-debug is
used, the optimization level for the device code is kept and the
emission of the debug directives is used.
If the opt level is > O0, debug info is requested +
--cuda-noopt-device-debug option is used, the optimization is disabled
for the device code + required debug info is emitted.

Reviewers: tra, echristo

Subscribers: aprantl, guansong, JDevlieghere, cfe-commits

Differential Revision: https://reviews.llvm.org/D51554

llvm-svn: 348930
clang/include/clang/Driver/ToolChain.h
clang/lib/Driver/ToolChains/Clang.cpp
clang/lib/Driver/ToolChains/Cuda.cpp
clang/lib/Driver/ToolChains/Cuda.h
clang/test/Driver/cuda-dwarf-2.cu
clang/test/Driver/openmp-offload-gpu.c