MIPS浮点添加

时间:2015-10-10 04:38:33

标签: assembly floating-point double 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 个答案:

答案 0 :(得分:1)

尝试使用ldc1代替l.dl.d很可能是一个宏,由于某种原因,它没有被定义/可用。

答案 1 :(得分:1)

我看到了自己的错误。不得不通过引用传递它们并尊重ABI :) 感谢