It is necessary to generate fixups in .debug_line as relaxation is
enabled due to the address delta may be changed after relaxation.
DWARF will record the mappings of lines and addresses in
.debug_line section. It will encode the information using special
opcodes, standard opcodes and extended opcodes in 'Line Number
Program'. I use DW_LNS_fixed_advance_pc to encode fixed length
address delta and DW_LNE_set_address to encode absolute address
to make it possible to generate fixups in .debug_line section.
These template parameters will reserve 32 bytes for the content of the fragment and 4 MCFixups. Are these reasonable values? I see there is a SmallString<8> Contents; field in this class already, and it would appear that each MCDwarfLineAddrFragment would have at most one fixup.
If the new parent class is going to reserve memory for the contents, it seems like there is some additional refactoring needed to avoid a pointless increase in memory consumption.