[DEBUG_INFO][NVPTX] Generate DW_AT_address_class to get the values in debugger.
the compiler should emit the DW_AT_address_class attribute for all
variable and parameter. It means, that DW_AT_address_class attribute
should be used in the non-standard way to support compatibility with the
Clang is able to generate the information about the variable address
class. This information is emitted as the expression sequence
DW_OP_constu <DWARF Address Space> DW_OP_swap DW_OP_xderef. The patch
tries to find all such expressions and transform them into
DW_AT_address_class <DWARF Address Space> if target is NVPTX and the debugger is gdb.
If the expression is not found, then default values are used. For the
local variables <DWARF Address Space> is set to ADDR_local_space(6), for
the globals <DWARF Address Space> is set to ADDR_global_space(5). The
values are taken from the table in the same section 5.2. CUDA-Specific
Reviewers: echristo, probinson
Subscribers: jholewinski, aprantl, llvm-commits
Differential Revision: https://reviews.llvm.org/D57157