[PATCH] [DWARF] Add CIE header fields address_size and segment_size when generating dwarf-4

Keith Walker kwalker at arm.com
Tue May 12 03:10:14 PDT 2015


Paul,

Thanks for review my patch.     I agree that segment_descriptor-size does appear to be a more appropriate name.


================
Comment at: lib/MC/MCDwarf.cpp:1310
@@ +1309,3 @@
+    // Segment Size
+    streamer.EmitIntValue(0, 1);
+  }
----------------
probinson wrote:
> LLVM doesn't support any targets with segmented addresses?
> 
I believe not.    The existing similar field in the header in the .debug_aranges section generated by the function EmitGenDwarfAranges() in the same source file does the same and just puts 0 in the segment (descriptor) size field.

================
Comment at: test/MC/ARM/dwarf-cfi-initial-state.s:17
@@ -16,1 +16,3 @@
+# CHECK: DW_CFA_nop:
+# CHECK: DW_CFA_nop:
 # CHECK-NOT: DW_CFA
----------------
probinson wrote:
> It's not clear to me where these extra nops came from.
They are the DW_CFA_nop entries in the "padding" field in the CIE that are added to make the CIE the length specified in the length field.    Adding the 2 new fields changed the length of the CIE and as a side-effect this inserts the 2 bytes of padding.

I'll add a comment to the test to make this clearer

http://reviews.llvm.org/D9558

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list