[all-commits] [llvm/llvm-project] 2d1025: [DebugInfo] Support for DW_AT_associated and DW_AT...

Alok Kumar Sharma via All-commits all-commits at lists.llvm.org
Mon Jul 20 07:25:11 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 2d10258a31a6d05368dfd4442c4aaa7b54614f1e
      https://github.com/llvm/llvm-project/commit/2d10258a31a6d05368dfd4442c4aaa7b54614f1e
  Author: Alok Kumar Sharma <AlokKumar.Sharma at amd.com>
  Date:   2020-07-20 (Mon, 20 Jul 2020)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Bitcode/allocated.ll
    A llvm/test/Bitcode/associated.ll
    A llvm/test/DebugInfo/X86/dwarfdump-allocatedExp.ll
    A llvm/test/DebugInfo/X86/dwarfdump-allocatedVar.ll
    A llvm/test/DebugInfo/X86/dwarfdump-associatedExp.ll
    A llvm/test/DebugInfo/X86/dwarfdump-associatedVar.ll
    A llvm/test/Verifier/array_allocated.ll
    A llvm/test/Verifier/array_associated.ll
    M llvm/unittests/IR/DebugTypeODRUniquingTest.cpp

  Log Message:
  -----------
  [DebugInfo] Support for DW_AT_associated and DW_AT_allocated.

Summary:
This support is needed for the Fortran array variables with pointer/allocatable
attribute. This support enables debugger to identify the status of variable
whether that is currently allocated/associated.

  for pointer array (before allocation/association)
  without DW_AT_associated

(gdb) pt ptr
type = integer (140737345375288:140737354129776)
(gdb) p ptr
value requires 35017956 bytes, which is more than max-value-size

  with DW_AT_associated

(gdb) pt ptr
type = integer (:)
(gdb) p ptr
$1 = <not associated>

  for allocatable array (before allocation)

  without DW_AT_allocated

(gdb) pt arr
type = integer (140737345375288:140737354129776)
(gdb) p arr
value requires 35017956 bytes, which is more than max-value-size

  with DW_AT_allocated

(gdb) pt arr
type = integer, allocatable (:)
(gdb) p arr
$1 = <not allocated>

    Testing
- unit test cases added
- check-llvm
- check-debuginfo

Reviewed By: aprantl

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




More information about the All-commits mailing list