2016-02-04 4 views
1

Я делаю сборку SPARC. Вот некоторые из моего кода:Ошибка Segfault от printf?

convert: 
    save %sp, -96, %sp 

    mov  %i0, %l0  !%i0 has a long array 
    mov  %i1, %l1  !%i1 has a char array 


process: 
    ld  [%i0], %o0  !maps firstArray[0] to %l0 
    mov  10, %o1   !maps 10 to %o1 
    call .div   !divide by 10 to get 10s place 
    nop 

    mov  %o0, %l3  !stores result in l3 
    stb  %l3, [%i1]  !stores result in the second array 


    mov  %l3, %o1  !checking contents after calculation 
    call printf 
    nop 

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

Также я не уверен, что мой способ реализации массивов параметров верен, но я не получал эту ошибку, прежде чем добавить инструкцию printf.

+3

Я думаю, что я понял -% o0 необходимо установить с помощью строки формата. – Rez

+0

Вы должны отправить это как ответ. Это действительно проблема. –

ответ

0

Вычислено: % o0 необходимо установить с помощью строки формата.