你好,我有一个用于
的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
寄存器的名称。但它没有组装。
有什么帮助吗?