| |||

Home > Vector Floating Point Programming > Vector and scalar operations > Control of scalar, vector, and mixed operations |

When `LEN`

is greater than 1, the behavior
of arithmetic operations depends on which register bank the destination
and operand registers are in (see *Register banks*).

Given instructions of the following general forms:

`Op`

,`Fd`

,`Fn`

`Fm`

`Op`

,`Fd`

`Fm`

the behavior is as follows:

If

is in the first bank of registers, s0 to s7 or d0 to d3, the operation is scalar.`Fd`

If the

is in the first bank of registers, but`Fm`

is not, the operation is mixed.`Fd`

If neither

nor`Fd`

are in the first bank of registers, the operation is vector.`Fm`

acts on the
value in `Op`

, and the
value in `Fm`

if
present. The result is placed in

`Fd`

acts on the
values in the vector starting at `Op`

,
together with the values in the vector starting at `Fm`

if
present. The results are placed in the vector starting at `Fn`

.`Fd`

For single-operand instructions,

acts
on the single value in `Op`

. `Fm`

`LEN`

copies
of the result are placed in the vector starting at

.`Fd`

For multiple-operand instructions,

acts
on the single value in `Op`

,
together with the values in the vector starting at `Fm`

.
The results are placed in the vector starting at `Fn`

.`Fd`