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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

The list of registers to load. It must be one of:<br />

{, , , }<br />

encoded as D:Vd = , type = 0b0000<br />

{, , , }<br />

encoded as D:Vd = , type = 0b0001.<br />

Contains the base address for the access.<br />

The alignment. It can be one of:<br />

64 8-byte alignment, encoded as align = 0b01.<br />

128 16-byte alignment, encoded as align = 0b10.<br />

256 32-byte alignment, encoded as align = 0b11.<br />

Instruction Details<br />

omitted St<strong>and</strong>ard alignment, see Unaligned data access on page A3-5. Encoded as<br />

align = 0b00.<br />

! If present, specifies writeback.<br />

Contains an address offset applied after the access.<br />

For more information about , !, <strong>and</strong> , see Advanced SIMD addressing mode on page A7-30.<br />

Operation<br />

if ConditionPassed() then<br />

EncodingSpecificOperations(); CheckAdvSIMDEnabled(); NullCheckIfThumbEE(n);<br />

address = R[n]; if (address MOD alignment) != 0 then GenerateAlignmentException();<br />

if wback then R[n] = R[n] + (if register_index then R[m] else 32);<br />

for e = 0 to elements-1<br />

Elem[D[d],e,esize] = MemU[address,ebytes];<br />

Elem[D[d2],e,esize] = MemU[address+ebytes,ebytes];<br />

Elem[D[d3],e,esize] = MemU[address+2*ebytes,ebytes];<br />

Elem[D[d4],e,esize] = MemU[address+3*ebytes,ebytes];<br />

address = address + 4*ebytes;<br />

Exceptions<br />

Undefined Instruction, Data Abort.<br />

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

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

Saved successfully!

Ooh no, something went wrong!