MOV (to/from SP)
Move (to/from SP)
This instruction copies the value of a register to or from the stack pointer.
If PSTATE.DIT is 1:
The execution time of this instruction is independent of:
The values of the data supplied in any of its registers.
The values of the NZCV flags.
The response of this instruction to asynchronous exceptions does not vary based on:
The values of the data supplied in any of its registers.
The values of the NZCV flags.
ADD (immediate)
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
MOV <Wd|WSP>, <Wn|WSP>
ADD <Wd|WSP>, <Wn|WSP>, #0
Rd == '11111' || Rn == '11111'
1
MOV <Xd|SP>, <Xn|SP>
ADD <Xd|SP>, <Xn|SP>, #0
Rd == '11111' || Rn == '11111'
<Wd|WSP>
Is the 32-bit name of the destination general-purpose register or stack pointer, encoded in the "Rd" field.
<Wn|WSP>
Is the 32-bit name of the source general-purpose register or stack pointer, encoded in the "Rn" field.
<Xd|SP>
Is the 64-bit name of the destination general-purpose register or stack pointer, encoded in the "Rd" field.
<Xn|SP>
Is the 64-bit name of the source general-purpose register or stack pointer, encoded in the "Rn" field.