Обработка ошибки адреса есть, невыровненные адреса ловятся. Подозреваю, что проблема в том, что при вызове прерывания надо куда-то записать адрес возврата, а указатель стека указывает в пустоту. Получается двойная ошибка, которую "обрабатывают" сбросом. Но это только гипотеза, каких-то подтверждений не видел.