LINUX.ORG.RU

Из какого компилятора можно позаимствовать создание отладочной информации?

 stabs, , отладочная информация


0

1

Сейчас пока ковыряю tcc, он маленький, это приятно. Он формирует инфу в формате STABS. Но желательно что-нибудь под пермиссивной лицензией. LLVM тоже можно рассмотреть, но я в него заглянул и в ужасе отшатнулся, когда не нашёл никаких описаний к функциям, которые отвечают за генерацию отладочной инфы. Т.е. в этом случае нужен хороший и уже работающий компилятор.

Притом инфа у меня сущесвует в виде моих структур данных, а никакого LLVM-кода я генерировать не собираюсь. Так что если без этого нельзя создать отладочную инфу, то LLVM, наверное, мимо.

Притом это не должна быть вставка текста в ассемблер - это должна быть запись прямо в файл.

★★★★★

Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от den73

И что? Я вчера этот сайт видел, но ответа на свой вопрос не получил.

посмотри его сегодня. трезвым (или не уставшим) :-)

на сайте описываются стандарты и спецификации, там-же libdwаrf которой эти форматы читаются и (О!) пишутся. Далее роются источники, читаются маны и обнаруживается «A Producer Library Interface to DWARF» (документ, пе-де-еф)

этого достаточно чтобы далее самому разобраться и нагуглить практик из всяких блогов

MKuznetsov ★★★★★
()
Последнее исправление: MKuznetsov (всего исправлений: 2)
Ответ на: комментарий от MKuznetsov

О, спасибо, супер! Жаль, правда, что там код на Форте. Но может быть полезно. Если не прокатит текущий вариант с курочением tcc, то попробую это.

Вот ещё нагуглилось: https://www.ibm.com/docs/en/zos/2.1.0?topic=information-writing-dwarf-data-elf-object-file

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от den73

Теоретически можно из go попробовать вытащить, правда неясно, он там сам её генерирует, или в ассемблер выдаёт.

den73 ★★★★★
() автор топика
Ответ на: комментарий от dataman

Или может быть из nanopass.org (не смотрел, просто пишу до кучи).

den73 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.