Ping. If someone could at least commit the part for stm8_genAssemblerEnd().
The reason is that as soon as this is complete, i would like to send a request to ST to add official support for SDCC in their debugger. It actually works.... :-)
Thanks,
/pedro
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Which version of the DWARF standard are you aiming for. AFAIK the current one is 4, but SDCC previously used 2, which is the worst version, since it does not have a formal specification.
Philipp
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The stm8/main.c part, and thus stm8_genAssemblerEnd() has been applied in revision #9483.
Good show. Thanks for the help (along with all the other help :-)).
Which version of the DWARF standard are you aiming for. AFAIK the current one is 4, but SDCC previously used 2, which is the worst version, since it does not have a formal specification.
Many embedded debuggers and tools i have come across simply do not or support later versions than version 2, even tough it is simply a draft. So my idea was really just to bug-fix the version 2 version so its works for tools like STs "visual develop". Other compilers that support compiling for it also just emit version 2 info. I think the reason is that for many embedded purposes the later version do not provide much extra functionality that is relevant for debugging small targets in C.
That said, the support for version 2 seems quite complete in e.g. GNU objdump. The fact that the document was never ratified does not seem to impact that.
So going forward i think if someone needs dwarf4 support it should be a seperate implementation that does not trash the current dwarf2 implementation as there are planty tools which only accept version 2 files possibly due to the reasons above. It would also be a shame to ruin the current dwarf2 as it frankly seems to work quite well and is fairly cleverly implemented. The way it embeds itself in the REL files is quite effective and resourceful. The only thing really missing is the handling og the .debug_lines info, which makes e.g. source debugging not work currently.
Thanks,
/pedro
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Here is the latest version of the patch.
Improvements:
Any feedback would be great.
Thanks,
/pedro
Ping. If someone could at least commit the part for stm8_genAssemblerEnd().
The reason is that as soon as this is complete, i would like to send a request to ST to add official support for SDCC in their debugger. It actually works.... :-)
Thanks,
/pedro
Ok, I'll look into it as soon as I find a bit of time. Probably monday or tuesday.
Philipp
The stm8/main.c part, and thus stm8_genAssemblerEnd() has been applied in revision #9483.
Philipp
Which version of the DWARF standard are you aiming for. AFAIK the current one is 4, but SDCC previously used 2, which is the worst version, since it does not have a formal specification.
Philipp
Many embedded debuggers and tools i have come across simply do not or support later versions than version 2, even tough it is simply a draft. So my idea was really just to bug-fix the version 2 version so its works for tools like STs "visual develop". Other compilers that support compiling for it also just emit version 2 info. I think the reason is that for many embedded purposes the later version do not provide much extra functionality that is relevant for debugging small targets in C.
That said, the support for version 2 seems quite complete in e.g. GNU objdump. The fact that the document was never ratified does not seem to impact that.
So going forward i think if someone needs dwarf4 support it should be a seperate implementation that does not trash the current dwarf2 implementation as there are planty tools which only accept version 2 files possibly due to the reasons above. It would also be a shame to ruin the current dwarf2 as it frankly seems to work quite well and is fairly cleverly implemented. The way it embeds itself in the REL files is quite effective and resourceful. The only thing really missing is the handling og the .debug_lines info, which makes e.g. source debugging not work currently.
Thanks,
/pedro
The rest got applied in revision #9559.
Philipp