Page 313 - ARM 64 Bit Assembly Language
P. 313
302 Chapter 9
9.4.4.1 Syntax
<op> St, St2, <addr>
<op> Dt, Dt2, <addr>
<op> Qt, Qt2, <addr>
• <op> is either ldp or stp.
• <addr> is 7 bits Pre-indexed, Post-indexed, or Signed immediate.
• Signed immediate Xt range: [-0x200, 0x1f8]. Wt range: [-0x100, 0xfc].
9.4.4.2 Operations
Name Effect Description
ldnp Yt ← Mem[addr] Load register pair from memory
Yt2 ← Mem[addr+size(Yt)]
stnp Mem[addr] ← Yt Store register pair in memory
Mem[addr+size(Yt)] ← Yt2
9.5 Data movement instructions
With the addition of all of the FP registers, there many more possibilities for how data can
be moved. There are many more registers, and FP registers may be 32 or 64 bit. This results
in several combinations for moving data among all of the registers. The FP instruction set
includes instructions for moving data between two FP registers, between FP and integer regis-
ters, and between the various system registers.
9.5.1 Moving between data registers
The most basic move instruction involving FP registers simply moves data between two float-
ing point registers, or moves data between an FP register and an Integer register. The instruc-
tion is:
fmov Move Between Data Registers.
9.5.1.1 Syntax
fmov Sd, Sn
fmov Wd, Sn
fmov Sd, Wn