Пошаговое выполнение для сборщика Intel AT & T? - PullRequest
3 голосов
/ 13 апреля 2010

Я пишу компилятор, который преобразует исходный код (написанный на небольшом императивном языке программирования) в 32-разрядный ассемблер Intel AT & T.

Я склонен тратить много времени на отладку из-за неприятных ошибок смещения и т. Д. В сгенерированном коде, и я хотел бы знать, знает ли кто-нибудь об инструменте для "обхода" сгенерированного кода ассемблера шаг за шагом -шаг, визуализируя что находится в стеке и т. д.

Я использую Ubuntu Linux в качестве своей платформы разработки, и мне удобно работать с терминалом - хотя GUI-программа была бы хороша. Это существует? Или есть веская причина, по которой это не так (может, проблема не так проста ...?)

Если у вас есть хорошие идеи для решения задач отладки в ассемблерном коде, я буду рад вас услышать!

Ответы [ 3 ]

1 голос
/ 14 апреля 2010

Мне нравится EDB (отладчик Эвана) в Linux. Он имеет приятный, простой в использовании графический интерфейс на основе QT4. Цель его разработчика - сделать его похожим на OllyDbg. И это активно поддерживается:

EDB на FreshMeat

Я почти уверен, что его можно установить через Synaptic в Ubuntu. Наслаждайтесь!

0 голосов
/ 01 мая 2010

Мой опыт работы с отладчиками, такими как Olly и EDB, довольно скуден, поэтому я не смог решить мою проблему с ними. Я закончил

  • разбрасывает вызовы к функции отладки в исходном коде, фиксируя неверные значения регистра
  • позволяет компилятору выводить код в формате HTML с полезными метаданными для различных итераций в анализе живучести и т. Д.
0 голосов
/ 13 апреля 2010

Является ли конечный результат процесса компиляции тем, что вы действительно можете выполнить и, следовательно, проверить в отладчике? В таком случае Отладчик отображения данных (ddd) может быть полезен.

...