📄 idigitvecmultsub.s
字号:
#include <config.h>/* Alpha assembly support for libI Written by Thomas Papanikolaou, June 2 1998 internal version for John Cremona*/ .set noreorder .set noat.text .align 3 .globl DigitVecMultSub .ent DigitVecMultSubDigitVecMultSub: .frame $30,0,$26,0 .prologue 0 bis $31,$31,$0 # carry = 0 ble $19,.Lend # if (l < 0 ) return carry .align 5.Loop: ldq $4,0($17) # $4 = aa = *a mulq $4,$18,$1 # $1 = lo = aa * m addq $17,8,$17 # a++ ldq $2,0($16) # $2 = x = *res subl $19,1,$19 # l-- addq $1,$0,$1 # lo += x cmpult $1,$0,$3 # tmp = (low < x) subq $2,$1,$1 # lo = x - lo stq $1,0($16) # *res = lo addq $16,8,$16 # res++ cmpult $2,$1,$2 # x = (x < lo) umulh $4,$18,$1 # hi = aa * m addq $1,$3,$0 # hi = aa * m + (low < x) addq $0,$2,$0 # hi = aa * m + (low < x) + (x < lo) bgt $19,.Loop # if (l > 0) goto .Loop.Lend: ret $31,($26),1 .end DigitVecMultSub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -