diff options
| author | David Blaikie <dblaikie@gmail.com> | 2013-12-06 19:38:46 +0000 | 
|---|---|---|
| committer | David Blaikie <dblaikie@gmail.com> | 2013-12-06 19:38:46 +0000 | 
| commit | 2666e24ca57a1a68f28127b84fe9d6eca46ca9f1 (patch) | |
| tree | 1c1da2b121453a026694b939d93d4831021ed96c /llvm/test/DebugInfo | |
| parent | f5308fac1e8205a862fdcfe9e5c8f66cf3c9c4d3 (diff) | |
| download | bcm5719-llvm-2666e24ca57a1a68f28127b84fe9d6eca46ca9f1.tar.gz bcm5719-llvm-2666e24ca57a1a68f28127b84fe9d6eca46ca9f1.zip | |
DebugInfo: Ensure unit IDs (for non-skeletal units) match thein index in the list
This simplifies reasoning about the code and enables simple navigation
from a skeleton to its full unit. (currently there are no type unit
skeletons, so the skeleton list doesn't have the same ID == index
property)
Eventually we should get rid of this ID and just store the labels we
need as the IDs are allowing this code to create difficult to
manage/understand associations (loops over non-skeletal units are
implicitly referencing their skeletal units during pub* emission, for
example). It may be necessary to have some kind of skeleton->full unit
association and a more direct pointer or similar device would be
preferable than an index.
llvm-svn: 196600
Diffstat (limited to 'llvm/test/DebugInfo')
| -rw-r--r-- | llvm/test/DebugInfo/X86/generate-odr-hash.ll | 12 | 
1 files changed, 6 insertions, 6 deletions
| diff --git a/llvm/test/DebugInfo/X86/generate-odr-hash.ll b/llvm/test/DebugInfo/X86/generate-odr-hash.ll index 11a145c188c..e76d6cc148e 100644 --- a/llvm/test/DebugInfo/X86/generate-odr-hash.ll +++ b/llvm/test/DebugInfo/X86/generate-odr-hash.ll @@ -76,6 +76,9 @@  ; Check that we generate a hash for wombat and the value, but not for the  ; anonymous type contained within. +; CHECK-LABEL: DW_AT_GNU_odr_signature [DW_FORM_data8] (0x685bcc220141e9d7) +; CHECK: DW_TAG_structure_type +; CHECK-NEXT: debug_str{{.*}}"wombat"  ; CHECK: DW_TAG_type_unit  ; CHECK: DW_TAG_structure_type  ; The signature for the outer 'wombat' type - this can be FileChecked once the @@ -87,9 +90,6 @@  ; CHECK-NOT: DW_AT_GNU_odr_signature  ; CHECK: DW_TAG_member  ; CHECK-NEXT: debug_str{{.*}}"a" -; CHECK-LABEL: DW_AT_GNU_odr_signature [DW_FORM_data8] (0x685bcc220141e9d7) -; CHECK: DW_TAG_structure_type -; CHECK-NEXT: debug_str{{.*}}"wombat"  ; Use the unit size as a rough hash/identifier for the unit we're dealing with  ; it happens to be unambiguous at the moment, but it's hardly ideal. @@ -108,12 +108,12 @@  ; CHECK-NEXT: unit_size = 0x0000002f  ; CHECK-NEXT: Offset Name  ; CHECK-NEXT: "walrus" -; CHECK-NEXT: unit_size = 0x0000003f -; CHECK-NEXT: Offset Name -; CHECK-NEXT: "int"  ; CHECK-NEXT: unit_size = 0x00000036  ; CHECK-NEXT: Offset Name  ; CHECK-NEXT: "wombat" +; CHECK-NEXT: unit_size = 0x0000003f +; CHECK-NEXT: Offset Name +; CHECK-NEXT: "int"  %struct.bar = type { i8 }  %"class.echidna::capybara::mongoose::fluffy" = type { i32, i32 } | 

