LINUX.ORG.RU

Как найти инструкцию, бросающую SIGILL?

 , vfp3, vfp4


0

1

Пробовал через gdb disassemble, но он падает с сегфолтом на первой же vfp инструкции (и чем же отлаживать отладчик?)
Обычным objdump'ом инструкции видно, но как узнать, где именно проблема?
предположительно причина в том, что код собран под vfp4, а у меня vfp3. Возможно, превышен номер регистра или ещё что-нибудь подобное.

★★★★★

и чем же отлаживать отладчик?

Так отладчиком же.

gdb `which gdb`
r myprogram
bt

Если тоже падает - другим отладчиком.

sbar
()

Нашёл инструкцию по адресу: vfma.f64 d0 d17 d16
Похоже, прийдётся писать эмулятор в ядре. Только я не знаю, как эмулировать его в vfp.

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

Вроде эмуляция vfp (в т.ч vfma) уже есть и должна срабатывать при неверной инструкции (arch/arm/vfp). ЧЯДНТ?

mittorn ★★★★★
() автор топика

Временно сделал «Эмуляцию» инструкции пропуском, однако скоро прийдётся делать нормальную реализацию.

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