📄 idigitvecmult.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 DigitVecMult .ent DigitVecMultDigitVecMult: .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 $3,0($17) # aa = *a mulq $3,$18,$1 # tmp = low_digit(aa * m) addq $17,8,$17 # a++ subl $19,1,$19 # l-- addq $1,$0,$1 # tmp += carry cmpult $1,$0,$2 # tmp2 = (tmp < carry) stq $1,0($16) # *res = tmp addq $16,8,$16 # res++ umulh $3,$18,$1 # tmp = high_digit(aa * m) addq $1,$2,$0 # tmp += tmp2; bgt $19,.Loop # if (l > 0) goto .Loop.Lend: ret $31,($26),1 .end DigitVecMult
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -