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.

A4.13.5 Advanced SIMD multiply instructions<br />

Table A4-20 summarizes the Advanced SIMD multiply instructions.<br />

Instruction See<br />

Vector Multiply Accumulate<br />

Vector Multiply Accumulate Long<br />

Vector Multiply Subtract<br />

Vector Multiply Subtract Long<br />

Advanced SIMD multiply instructions can operate on vectors of:<br />

8-bit, 16-bit, or 32-bit unsigned integers<br />

8-bit, 16-bit, or 32-bit signed integers<br />

8-bit or 16-bit polynomials over {0,1} (VMUL <strong>and</strong> VMULL only)<br />

single-precision (32-bit) floating-point numbers.<br />

They can also act on one vector <strong>and</strong> one scalar.<br />

The Instruction Sets<br />

Long instructions have doubleword (64-bit) oper<strong>and</strong>s, <strong>and</strong> produce quadword (128-bit) results. Other<br />

Advanced SIMD multiply instructions can have either doubleword or quadword oper<strong>and</strong>s, <strong>and</strong> produce<br />

results of the same size.<br />

VFP multiply instructions can operate on:<br />

single-precision (32-bit) floating-point numbers<br />

double-precision (64-bit) floating-point numbers.<br />

Some VFP implementations do not support double-precision numbers.<br />

Table A4-20 Advanced SIMD multiply instructions<br />

VMLA, VMLAL, VMLS, VMLSL (integer) on<br />

page A8-634<br />

VMLA, VMLS (floating-point) on page A8-636<br />

VMLA, VMLAL, VMLS, VMLSL (by scalar) on<br />

page A8-638<br />

Vector Multiply VMUL, VMULL (integer <strong>and</strong> polynomial) on<br />

page A8-662<br />

Vector Multiply Long<br />

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

VMUL, VMULL (by scalar) on page A8-666<br />

Vector Saturating Doubling Multiply Accumulate Long<br />

Vector Saturating Doubling Multiply Subtract Long<br />

VQDMLAL, VQDMLSL on page A8-702<br />

Vector Saturating Doubling Multiply Returning High Half VQDMULH on page A8-704<br />

Vector Saturating Rounding Doubling Multiply Returning<br />

High Half<br />

VQRDMULH on page A8-712<br />

Vector Saturating Doubling Multiply Long VQDMULL on page A8-706<br />

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

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

Saved successfully!

Ooh no, something went wrong!