I am working on a little mini compiler while trying to learn some MIPS here. Here\'s my issue:
MIPS has an instruction li (load immediate) which would work like thi
You will need to use the floating point registers to load your floats.
Instead of:
li $5,2.5
Try:
li.s $f5,2.5
Take a look at mfc1 and mtc1 instructions to move between integer and floating point registers.
MARS does not appear to have any instructions/pseudo instructions that load floating point immediate values into floating registers. Instead, you need to put the floating point value in memory and load the register from memory:
.data
fp1: .double 2.5
fp2: .double -0.75
.text
l.d $f0, fp1
l.d $f2, fp2