protected override void WriteHeader(DwarfWriter writer) { if (Version < 5) { // 3. debug_abbrev_offset (section offset) var abbrevOffset = Abbreviation.Offset; if (writer.EnableRelocation) { writer.RecordRelocation(DwarfRelocationTarget.DebugAbbrev, writer.SizeOfUIntEncoding(), abbrevOffset); abbrevOffset = 0; } writer.WriteUIntFromEncoding(abbrevOffset); // 4. address_size (ubyte) writer.WriteAddressSize(AddressSize); } else { // NOTE: order of address_size/debug_abbrev_offset are different from Dwarf 4 // 4. address_size (ubyte) writer.WriteAddressSize(AddressSize); // 5. debug_abbrev_offset (section offset) var abbrevOffset = Abbreviation.Offset; if (writer.EnableRelocation) { writer.RecordRelocation(DwarfRelocationTarget.DebugAbbrev, writer.SizeOfUIntEncoding(), abbrevOffset); abbrevOffset = 0; } writer.WriteUIntFromEncoding(abbrevOffset); } }
protected override void Write(DwarfWriter writer) { throw new System.NotImplementedException(); }