操纵臂组件宏参数

时间:2014-10-29 04:10:16

标签: assembly macros arm

你好,我有一个用于

的arm宏
DO_STUFF $reg1,$reg2,scal

  vmull.s16 $reg2,$reg1,$scal

ENDM

如果我将$reg2作为Q寄存器而$reg1作为D寄存器,那么每件事情都可以。但是假设我想将$reg1也作为Q寄存器传递,并在其下半部分执行mutliplication。即如果我通过Q0我想在D0上进行乘法运算。我该怎么做。我想要一些不会影响性能的方法,即一些汇编程序指令。

我已尝试使用字符串操作,根据ARM文档

improb SETS "literal":CC:(strvar2:LEFT:4)

; sets the variable improbto the value "literal"
; with the left-most four characters of the
; contents of string variable strvar2appended

我尝试使用

dreg1 SETS "d":REVERSE_CC:($reg1:RIGHT:1)

提取D寄存器的名称。但它没有组装。 有什么帮助吗?

0 个答案:

没有答案