DI: Prune another example

llvm-svn: 219053
This commit is contained in:
Duncan P. N. Exon Smith 2014-10-04 15:30:52 +00:00
parent 64567a80d2
commit 8e9f2813cf
1 changed files with 0 additions and 62 deletions

View File

@ -858,68 +858,6 @@ in ``lib/IR/DIBuilder.cpp``.
C/C++ source file information
-----------------------------
Given the source files ``MySource.cpp`` and ``MyHeader.h`` located in the
directory ``/Users/mine/sources``, the following code:
.. code-block:: c
#include "MyHeader.h"
int main(int argc, char *argv[]) {
return 0;
}
a C/C++ front-end would generate the following descriptors:
.. code-block:: llvm
...
;;
;; Define the compile unit for the main source file "/Users/mine/sources/MySource.cpp".
;;
!0 = metadata !{
i32 786449, ;; Tag
metadata !1, ;; File/directory name
i32 4, ;; Language Id
metadata !"clang version 3.4 ",
i1 false, ;; Optimized compile unit
metadata !"", ;; Compiler flags
i32 0, ;; Runtime version
metadata !2, ;; Enumeration types
metadata !2, ;; Retained types
metadata !3, ;; Subprograms
metadata !2, ;; Global variables
metadata !2, ;; Imported entities (declarations and namespaces)
metadata !"" ;; Split debug filename
1, ;; Full debug info
}
;;
;; Define the file for the file "/Users/mine/sources/MySource.cpp".
;;
!1 = metadata !{
metadata !"MySource.cpp",
metadata !"/Users/mine/sources"
}
!5 = metadata !{
i32 786473, ;; Tag
metadata !1
}
;;
;; Define the file for the file "/Users/mine/sources/Myheader.h"
;;
!14 = metadata !{
i32 786473, ;; Tag
metadata !15
}
!15 = metadata !{
metadata !"./MyHeader.h",
metadata !"/Users/mine/sources",
}
...
``llvm::Instruction`` provides easy access to metadata attached with an
instruction. One can extract line number information encoded in LLVM IR using
``Instruction::getMetadata()`` and ``DILocation::getLineNumber()``.