POOL32F 010101 |
ft |
fs |
0 |
fmt |
RSQRT fmt 00001000 |
POOL32FXf 111011 |
6 |
5 |
5 |
1 |
1 |
8 |
6 |
RSQRT.fmt |
Reciprocal Square Root Approximation | |
RSQRT.S ft, fs |
microMIPS |
Reciprocal Square Root Approximation |
RSQRT.D ft, fs |
microMIPS |
Reciprocal Square Root Approximation |
Reciprocal Square Root Approximation
To approximate the reciprocal of the square root of an FP value (quickly).
FPR[ft] = 1.0 / sqrt(FPR[fs])
The reciprocal of the positive square root of the value in FPR fs is approximated and placed into FPR ft. The operand and result are values in format fmt.
The numeric accuracy of this operation is implementation dependent; it does not meet the accuracy specified by the
IEEE 754 Floating Point standard. The computed result differs from both the exact result and the IEEE-mandated representation of the exact result by no more than two units in the least-significant place (ULP).
The effect of the current FCSR rounding mode on the result is implementation dependent.
The fields fs and ft must specify FPRs valid for operands of type fmt. If the fields are not valid, the result is UNPREDICTABLE.
The operand must be a value in format fmt; if it is not, the result is UNPREDICTABLE and the value of the operand
FPR becomes UNPREDICTABLE.
RSQRT.S and RSQRT.D: Required in all versions of MIPS64 since MIPS64 Release 1. Not available in MIPS32
Release 1. Required in MIPS32 Release 2 and all subsequent versions of MIPS32. When required, required whenever
FPU is present, whether a 32-bit or 64-bit FPU, whether in 32-bit or 64-bit FP Register Mode (FIRF64=0 or 1,
StatusFR=0 or 1).
StoreFPR(ft, fmt, 1.0 / SquareRoot(valueFPR(fs, fmt)))
Coprocessor Unusable, Reserved Instruction
Inexact, Division-by-zero, Unimplemented Operation, Invalid Operation, Overflow, Underflow