You copied the Doc URL to your clipboard.

# VRSQRTS

Vector Reciprocal Square Root Step.

### Syntax

```VRSQRTS{cond}.F32 {Qd}, Qn, Qm ```

```VRSQRTS{cond}.F32 {Dd}, Dn, Dm ```

where:

`cond`

is an optional condition code.

`Qd`, `Qn`, `Qm`

are the destination vector, the first operand vector, and the second operand vector, for a quadword operation.

`Dd`, `Dn`, `Dm`

are the destination vector, the first operand vector, and the second operand vector, for a doubleword operation.

## Operation

`VRSQRTS` multiplies the elements of one vector by the corresponding elements of another vector, subtracts each of the results from three, divides these results by two, and places the final results into the elements of the destination vector.

The Newton-Raphson iteration:

`xn+1` ` = ` `xn` `(3–dxn2)/2`

converges to (`1/``d`) if `x`0 is the result of `VRSQRTE` applied to `d`.

## Results for out-of-range inputs

The following table shows the results where input values are out of range:

Table 14-18 Results for out-of-range inputs in VRSQRTS

1st operand element 2nd operand element Result element
NaN - Default NaN
- NaN Default NaN
± 0.0 or denormal ± infinity 1.5
± infinity ± 0.0 or denormal 1.5