20.121 MOVI (vector)

Move Immediate (vector).

Syntax

MOVI Vd.T, #imm8{, LSL #0} ; 8-bit

MOVI Vd.T, #imm8{, LSL #amount} ; 16-bit shifted immediate

MOVI Vd.T, #imm8{, LSL #amount} ; 32-bit shifted immediate

MOVI Vd.T, #imm8, MSL #amount ; 32-bit shifting ones

MOVI Dd, #imm ; 64-bit scalar

MOVI Vd.2D, #imm ; 64-bit vector

Where:

Vd
Is the name of the SIMD and FP destination register
T

Is an arrangement specifier:

8-bit
Can be one of 8B or 16B.
16-bit shifted immediate
Can be one of 4H or 8H.
32-bit shifted immediate
Can be one of 2S or 4S.
32-bit shifting ones
Can be one of 2S or 4S.
imm8
Is an 8-bit immediate.
amount

Is the shift amount:

16-bit shifted immediate
Can be one of 0 or 8.
32-bit shifted immediate
Can be one of 0, 8, 16 or 24.
32-bit shifting ones
Can be one of 8 or 16.

Defaults to zero if LSL is omitted.

Dd
Is the 64-bit name of the SIMD and FP destination register.
imm
Is a 64-bit immediate.

Usage

Move Immediate (vector). This instruction places an immediate constant into every vector element of the destination SIMD and FP register.

Depending on the settings in the CPACR_EL1, CPTR_EL2, and CPTR_EL3 registers, and the current Security state and Exception level, an attempt to execute the instruction might be trapped.

Non-ConfidentialPDF file icon PDF versionDUI0801J
Copyright © 2014–2017, 2019 Arm Limited or its affiliates. All rights reserved.