05.02.2013 Views

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Assembler syntax<br />

PLD[W] [, +/- {, }]<br />

where:<br />

Instruction Details<br />

W If specified, selects PLDW, encoded as W = 1 in Thumb encodings <strong>and</strong> R = 0 in <strong>ARM</strong><br />

encodings. If omitted, selects PLD, encoded as W = 0 in Thumb encodings <strong>and</strong> R = 1 in<br />

<strong>ARM</strong> encodings.<br />

See St<strong>and</strong>ard assembler syntax fields on page A8-7. An <strong>ARM</strong> PLD or PLDW instruction must<br />

be unconditional.<br />

Is the base register. The SP can be used.<br />

+/- Is + or omitted if the optionally shifted value of is to be added to the base register value<br />

(add == TRUE), or – if it is to be subtracted (permitted in <strong>ARM</strong> code only, add == FALSE).<br />

Contains the offset that is optionally shifted <strong>and</strong> applied to the value of to form the<br />

address.<br />

The shift to apply to the value read from . If absent, no shift is applied. For encoding<br />

T1, can only be omitted, encoded as imm2 = 0b00, or LSL # with = 1, 2,<br />

or 3, with encoded in imm2. For encoding A1, see Shifts applied to a register on<br />

page A8-10.<br />

Operation<br />

if ConditionPassed() then<br />

EncodingSpecificOperations();<br />

offset = Shift(R[m], shift_t, shift_n, APSR.C);<br />

address = if add then (R[n] + offset) else (R[n] - offset);<br />

if is_pldw then<br />

Hint_PreloadDataForWrite(address);<br />

else<br />

Hint_PreloadData(address);<br />

Exceptions<br />

None.<br />

<strong>ARM</strong> DDI 0406B Copyright © 1996-1998, 2000, 2004-2008 <strong>ARM</strong> Limited. All rights reserved. A8-241

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!