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.

Advanced SIMD <strong>and</strong> VFP Instruction Encoding<br />

A7.5 VFP data-processing instructions<br />

Thumb encoding<br />

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0<br />

1 1 1 T 1 1 1 0 opc1 opc2 1 0 1 opc3 0 opc4<br />

<strong>ARM</strong> encoding<br />

31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0<br />

cond 1 1 1 0 opc1 opc2 1 0 1 opc3 0 opc4<br />

If T == 1 in the Thumb encoding or cond == 0b1111 in the <strong>ARM</strong> encoding, the instruction is UNDEFINED.<br />

Otherwise:<br />

Table A7-16 shows the encodings for three-register VFP data-processing instructions. Other<br />

encodings in this space are UNDEFINED.<br />

Table A7-17 on page A7-25 applies only if Table A7-16 indicates that it does. It shows the encodings<br />

for VFP data-processing instructions with two registers or a register <strong>and</strong> an immediate. Other<br />

encodings in this space are UNDEFINED.<br />

Table A7-18 on page A7-25 shows the immediate constants available in the VMOV (immediate)<br />

instruction.<br />

These instructions are CDP instructions for coprocessors 10 <strong>and</strong> 11.<br />

opc1 opc3 Instruction See<br />

Table A7-16 Three-register VFP data-processing instructions<br />

0x00 - Vector Multiply Accumulate or Subtract VMLA, VMLS (floating-point) on<br />

page A8-636<br />

0x01 - Vector Negate Multiply Accumulate or Subtract VNMLA, VNMLS, VNMUL on page A8-674<br />

0x10 x1<br />

x0 Vector Multiply VMUL (floating-point) on page A8-664<br />

0x11 x0 Vector Add VADD (integer) on page A8-536<br />

x1 Vector Subtract VSUB (integer) on page A8-788<br />

1x00 x0 Vector Divide VDIV on page A8-590<br />

1x11 - Other VFP data-processing instructions Table A7-17 on page A7-25<br />

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

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

Saved successfully!

Ooh no, something went wrong!