MIPS с плавающей точкой добавить

Я пытаюсь сделать простую функцию, которая добавляет к плавающим аргументам, передаваемым в MIPS. Ранее я сделал простой код для добавления целых:

   move    v0,a0      
   add     v0,v0,a1   
   j       ra

Копируя его, я сделал что-то похожее для поплавков

    l.d $f0,0($a0)
    l.d $f2,0($a1)
    add.d $f0,$f0,$f2
    j ra 

Что приводит к ошибке компиляции:

Error: illegal operands `l.d'

Я думаю, это из-за того, что я пытаюсь получить аргументы от a0. Как я должен получать двойные аргументы с плавающей запятой, добавляя их и возвращая их.

заранее спасибо

2 ответа

Решение

Я видел свою ошибку. Пришлось передать их по ссылке и уважать ABI:) Спасибо

Пытаться ldc1 вместо l.d, l.d скорее всего, макрос и по какой-то причине он не определен / недоступен.

Другие вопросы по тегам