英特爾 XScale(R) 技術主題SMLAL - 有符號長乘法累加

語法

SMLAL[condition][S] dest_lo, dest_hi, op1, op2

其中:

 condition

16 個條件之一。請參閱條件程式碼狀態

 S

更新條件程式碼標誌(位 [20])

 dest_lo

低 32 位的目標暫存器

 dest_hi

高 32 位的目標暫存器

 op1

包含第一個運算元的暫存器

 op2

包含第二個運算元的暫存器

說明

SMLAL 指令執行有符號或無符號運算元 op1op2 的乘法。乘法的 64 位結果加到 dest_lodest_hi。和寫入 dest_lodest_hi。condition 必須是有效值;否則將指令當作 NOP。

定址模式

無運算元

影響的標誌

N

Z

C

V

Q

S

I

F

T

TM

TM

T

T

 

T

 

 

 

編碼

31

 

28

27

26

25

24

23

22

21

20

19

 

16

15

 

12

11

 

8

7

6

5

4

3

 

0

condition

0

0

0

0

1

1

1

S

dest_hi

dest_lo

op2

1

0

0

1

op1

示例

1                          @.text
2                          @.globl funcsmlal
3                          @.align 0
4
5                          @ * * * SMLAL * * *
6
7                    AREA example, CODE, READONLY
8
9    00000000   E3A00000   MOV      R0, #0xF00D
10   00000004   E3A01000   MOV      R1, #0xBEEF
11
12   00000008   F4F67890   SMLAL    R5, R6, R0, R1
13   00000012   E0F87190   SMLALS   R7, R8, R0, R1
14
15                         END