summaryrefslogtreecommitdiff
path: root/test/Linker/type-unique-simple2.ll
diff options
context:
space:
mode:
authorManman Ren <manman.ren@gmail.com>2013-10-01 23:45:54 +0000
committerManman Ren <manman.ren@gmail.com>2013-10-01 23:45:54 +0000
commit2b53089bd017139f0125b870ace94ff27dffd2ff (patch)
tree41f0243fd8d9f2480e93554180518c19e00d7bb5 /test/Linker/type-unique-simple2.ll
parent76502a756da8fbc3cf6f2f26bc09cce598a9fc03 (diff)
downloadllvm-2b53089bd017139f0125b870ace94ff27dffd2ff.tar.gz
llvm-2b53089bd017139f0125b870ace94ff27dffd2ff.tar.bz2
llvm-2b53089bd017139f0125b870ace94ff27dffd2ff.tar.xz
Debug Info: In DIBuilder, the derived-from field of a DW_TAG_pointer_type
is updated to use DITypeRef. Move isUnsignedDIType and getOriginalTypeSize from DebugInfo.h to be static helper functions in DwarfCompileUnit. We already have a static helper function "isTypeSigned" in DwarfCompileUnit, and a pointer to DwarfDebug is added to resolve the derived-from field. All three functions need to go across link for derived-from fields, so we need to get hold of a type identifier map. A pointer to DwarfDebug is also added to DbgVariable in order to resolve the derived-from field. Debug info verifier is updated to check a derived-from field is a TypeRef. Verifier will not go across link for derived-from fields, in debug info finder, we go across the link to add derived-from fields to types. Function getDICompositeType is only used by dragonegg and since dragonegg does not generate identifier for types, we use an empty map to resolve the derived-from field. When printing a derived-from field, we use DITypeRef::getName to either return the type identifier or getName of the DIType. A paired commit at clang is required due to changes to DIBuilder. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191800 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Linker/type-unique-simple2.ll')
-rw-r--r--test/Linker/type-unique-simple2.ll6
1 files changed, 6 insertions, 0 deletions
diff --git a/test/Linker/type-unique-simple2.ll b/test/Linker/type-unique-simple2.ll
new file mode 100644
index 0000000000..ead91df6da
--- /dev/null
+++ b/test/Linker/type-unique-simple2.ll
@@ -0,0 +1,6 @@
+; REQUIRES: object-emission
+
+; RUN: llvm-link %S/Inputs/type-unique-simple2-a.ll %S/Inputs/type-unique-simple2-b.ll -S -o %t
+; RUN: cat %t | FileCheck %S/Inputs/type-unique-simple2-a.ll -check-prefix=LINK
+; RUN: llc -filetype=obj -O0 < %t > %t2
+; RUN: llvm-dwarfdump -debug-dump=info %t2 | FileCheck %S/Inputs/type-unique-simple2-a.ll