MIPS: Compile math.sqrt() to sqrt.d instruction.

This commit is contained in:
Mike Pall 2012-10-15 21:28:10 +02:00
parent a58b86dad3
commit bbe35adfcd
2 changed files with 3 additions and 0 deletions

View File

@ -1827,6 +1827,8 @@ static void asm_ir(ASMState *as, IRIns *ir)
break;
if (ir->op2 <= IRFPM_TRUNC)
asm_callround(as, ir, IRCALL_lj_vm_floor + ir->op2);
else if (ir->op2 == IRFPM_SQRT)
asm_fpunary(as, ir, MIPSI_SQRT_D);
else
asm_callid(as, ir, IRCALL_lj_vm_floor + ir->op2);
break;

View File

@ -223,6 +223,7 @@ typedef enum MIPSIns {
MIPSI_SUB_D = 0x46200001,
MIPSI_MUL_D = 0x46200002,
MIPSI_DIV_D = 0x46200003,
MIPSI_SQRT_D = 0x46200004,
MIPSI_ADD_S = 0x46000000,
MIPSI_SUB_S = 0x46000001,