[MCDwarf] Delete unneeded DW_AT_unspecified_parameters
authorFangrui Song <maskray@google.com>
Mon, 25 May 2020 05:30:59 +0000 (22:30 -0700)
committerFangrui Song <maskray@google.com>
Mon, 25 May 2020 05:36:57 +0000 (22:36 -0700)
llvm/lib/MC/MCDwarf.cpp
llvm/test/MC/ARM/dwarf-asm-multiple-sections.s
llvm/test/MC/MachO/gen-dwarf.s

index 71b8f0e..d75b55c 100644 (file)
@@ -841,19 +841,13 @@ static void EmitGenDwarfAbbrev(MCStreamer *MCOS) {
   // DW_TAG_label DIE abbrev (2).
   MCOS->emitULEB128IntValue(2);
   MCOS->emitULEB128IntValue(dwarf::DW_TAG_label);
-  MCOS->emitInt8(dwarf::DW_CHILDREN_yes);
+  MCOS->emitInt8(dwarf::DW_CHILDREN_no);
   EmitAbbrev(MCOS, dwarf::DW_AT_name, dwarf::DW_FORM_string);
   EmitAbbrev(MCOS, dwarf::DW_AT_decl_file, dwarf::DW_FORM_data4);
   EmitAbbrev(MCOS, dwarf::DW_AT_decl_line, dwarf::DW_FORM_data4);
   EmitAbbrev(MCOS, dwarf::DW_AT_low_pc, dwarf::DW_FORM_addr);
   EmitAbbrev(MCOS, 0, 0);
 
-  // DW_TAG_unspecified_parameters DIE abbrev (3).
-  MCOS->emitULEB128IntValue(3);
-  MCOS->emitULEB128IntValue(dwarf::DW_TAG_unspecified_parameters);
-  MCOS->emitInt8(dwarf::DW_CHILDREN_no);
-  EmitAbbrev(MCOS, 0, 0);
-
   // Terminate the abbreviations for this compilation unit.
   MCOS->emitInt8(0);
 }
@@ -1085,12 +1079,6 @@ static void EmitGenDwarfInfo(MCStreamer *MCOS,
     const MCExpr *AT_low_pc = MCSymbolRefExpr::create(Entry.getLabel(),
                                              MCSymbolRefExpr::VK_None, context);
     MCOS->emitValue(AT_low_pc, AddrSize);
-
-    // The DW_TAG_unspecified_parameters DIE abbrev (3).
-    MCOS->emitULEB128IntValue(3);
-
-    // Add the NULL DIE terminating the DW_TAG_unspecified_parameters DIE's.
-    MCOS->emitInt8(0);
   }
 
   // Add the NULL DIE terminating the Compile Unit DIE's.
index ffcdfda..2f32681 100644 (file)
@@ -41,10 +41,10 @@ b:
 // DWARF4:  DW_AT_ranges [DW_FORM_sec_offset]      (0x00000000
 // DWARF5:  DW_AT_ranges [DW_FORM_sec_offset]      (0x0000000c
 
-// DWARF: 0x{{[0-9a-f]+}}:   DW_TAG_label [2] *
+// DWARF: 0x{{[0-9a-f]+}}:   DW_TAG_label [2]
 // DWARF-NEXT: DW_AT_name [DW_FORM_string]     ("a")
 
-// DWARF: 0x{{[0-9a-f]+}}:   DW_TAG_label [2] *
+// DWARF: 0x{{[0-9a-f]+}}:   DW_TAG_label [2]
 // DWARF-NEXT: DW_AT_name [DW_FORM_string]     ("b")
 
 
index 58f8a7c..5bf6cac 100644 (file)
@@ -25,14 +25,12 @@ _x: .long 1
 // CHECK:      DW_AT_producer  DW_FORM_string
 // CHECK:      DW_AT_language  DW_FORM_data2
 
-// CHECK: [2] DW_TAG_label     DW_CHILDREN_yes
+// CHECK: [2] DW_TAG_label     DW_CHILDREN_no
 // CHECK:      DW_AT_name      DW_FORM_string
 // CHECK:      DW_AT_decl_file DW_FORM_data4
 // CHECK:      DW_AT_decl_line DW_FORM_data4
 // CHECK:      DW_AT_low_pc    DW_FORM_addr
 
-// CHECK: [3] DW_TAG_unspecified_parameters    DW_CHILDREN_no
-
 
 // CHECK: .debug_info contents:
 
@@ -53,30 +51,18 @@ _x: .long 1
 // CHECK:      DW_AT_decl_line (5)
 // CHECK:      DW_AT_low_pc (0x0000000000000000)
 
-// CHECK:      DW_TAG_unspecified_parameters
-
-// CHECK:      NULL
-
 // CHECK:    DW_TAG_label
 // CHECK:      DW_AT_name ("foo")
 // CHECK:      DW_AT_decl_file ([[FILE]])
 // CHECK:      DW_AT_decl_line (9)
 // CHECK:      DW_AT_low_pc (0x0000000000000007)
 
-// CHECK:      DW_TAG_unspecified_parameters
-
-// CHECK:      NULL
-
 // CHECK:    DW_TAG_label
 // CHECK:      DW_AT_name ("baz")
 // CHECK:      DW_AT_decl_file ([[FILE]])
 // CHECK:      DW_AT_decl_line (10)
 // CHECK:      DW_AT_low_pc (0x0000000000000007)
 
-// CHECK:      DW_TAG_unspecified_parameters
-
-// CHECK:      NULL
-
 // CHECK:    NULL
 
 // CHECK: .debug_aranges contents: