[PATCH] D42665: Extensions to the LLVM debug information metadata to support the Fortran language.
xoviat via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 29 15:13:16 PST 2018
xoviat created this revision.
Herald added subscribers: llvm-commits, JDevlieghere, aprantl.
There are several new debug info constructs added here. They include the following.
!DIStringType :
Debug clients expect Fortran CHARACTER types to appear as
DW_TAG_string_type in the DWARF. !DIStringType can be used to generate
DWARF for constant and variable sized CHARACTER type variables. If the
size of a CHARACTER must be computed at run-time, DWARF specifies that
the DW_TAG_string_type has a DW_AT_string_length with a location expression.
!DIFortranArrayType and !DIFortranSubrange :
Debug clients expect Fortran arrays to specify the bounds of their
dimensions in DW_TAG_subrange_types. Both the lower and upper bounds can
be given by the programmer as constants, variables, a mix of constants
and variables, omitted, or as deferred. The DWARF standard requires
that these bounds appear in the DW_TAG_subrange_type. Debug clients
expect variable bounds to be encoded in blocks.
Repository:
rL LLVM
https://reviews.llvm.org/D42665
Files:
include/llvm/Bitcode/LLVMBitCodes.h
include/llvm/IR/DIBuilder.h
include/llvm/IR/DebugInfoFlags.def
include/llvm/IR/DebugInfoMetadata.h
include/llvm/IR/Metadata.def
lib/AsmParser/LLParser.cpp
lib/Bitcode/Reader/MetadataLoader.cpp
lib/Bitcode/Writer/BitcodeWriter.cpp
lib/CodeGen/AsmPrinter/DebugLocEntry.h
lib/CodeGen/AsmPrinter/DebugLocStream.cpp
lib/CodeGen/AsmPrinter/DebugLocStream.h
lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
lib/CodeGen/AsmPrinter/DwarfDebug.cpp
lib/CodeGen/AsmPrinter/DwarfDebug.h
lib/CodeGen/AsmPrinter/DwarfExpression.cpp
lib/CodeGen/AsmPrinter/DwarfExpression.h
lib/CodeGen/AsmPrinter/DwarfUnit.cpp
lib/CodeGen/AsmPrinter/DwarfUnit.h
lib/IR/AsmWriter.cpp
lib/IR/DIBuilder.cpp
lib/IR/DebugInfoMetadata.cpp
lib/IR/LLVMContextImpl.h
lib/IR/Verifier.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D42665.131884.patch
Type: text/x-patch
Size: 67156 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180129/0d6c1cfb/attachment.bin>
More information about the llvm-commits
mailing list