Omit all the extra static attributes on subprograms in -gmlt

This omission will be done in a fancier manner once we're dealing with
"put gmlt in the skeleton CUs under fission" - it'll have to be
conditional on the kind of CU we're emitting into (skeleton or gmlt).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218098 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
David Blaikie 2014-09-19 04:30:36 +00:00
parent 2ee31bcdee
commit a5a4f87474
2 changed files with 12 additions and 0 deletions

View File

@ -1482,6 +1482,9 @@ void DwarfUnit::applySubprogramAttributes(DISubprogram SP, DIE &SPDie) {
if (!SP.getName().empty())
addString(SPDie, dwarf::DW_AT_name, SP.getName());
if(getCUNode().getEmissionKind() == DIBuilder::LineTablesOnly)
return;
addSourceLine(SPDie, SP);
// Add the prototype if we have a prototype and we have a C like

View File

@ -16,6 +16,15 @@
; attribute on the CU.
; CHECK: DW_TAG_compile_unit
; CHECK-NOT: DW_AT_ranges
; CHECK-NOT: {{DW_TAG|NULL}}
; Check that we only provide the minimal attributes on a subprogram to save space.
; CHECK: DW_TAG_subprogram
; CHECK-NEXT: DW_AT_low_pc
; CHECK-NEXT: DW_AT_high_pc
; FIXME: We don't need the DW_AT_frame_base for -gmlt.
; CHECK-NEXT: DW_AT_frame_base
; CHECK-NEXT: DW_AT_name
; CHECK-NOT: DW_AT
; CHECK: {{DW_TAG|NULL}}
; FIXME: We probably want to avoid printing out anything if the section isn't there.