diff options
author | Torbjorn Granlund <tege@gmplib.org> | 2013-10-16 18:52:04 +0200 |
---|---|---|
committer | Torbjorn Granlund <tege@gmplib.org> | 2013-10-16 18:52:04 +0200 |
commit | c0bc8c19ff5429093d3916fdb8b0c5ca3af3f043 (patch) | |
tree | c2cf0f2edf829fc8ee416d4c4d04ab8501c435f3 /mpn/alpha | |
parent | 1720969d90f1a52f280a38b922190f4108fdd425 (diff) | |
download | gmp-c0bc8c19ff5429093d3916fdb8b0c5ca3af3f043.tar.gz |
Align table to 8-byte boundary. Make code work if table is not fully aligned. Properly test for BWX.
Diffstat (limited to 'mpn/alpha')
-rw-r--r-- | mpn/alpha/invert_limb.asm | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/mpn/alpha/invert_limb.asm b/mpn/alpha/invert_limb.asm index 4908c3910..9a2b5ca33 100644 --- a/mpn/alpha/invert_limb.asm +++ b/mpn/alpha/invert_limb.asm @@ -37,11 +37,10 @@ PROLOGUE(mpn_invert_limb,gp) bic r1, 1, r7 lda r4, 1(r4) srl r16, 1, r3 -ifdef(`BWX',` addq r7, r2, r1 +ifelse(bwx_available_p,1,` ldwu r0, -512(r1) ',` - addq r1, r2, r1 ldq_u r0, -512(r1) extwl r0, r7, r0 ') @@ -76,9 +75,11 @@ ifdef(`BWX',` subq r0, r3, r0 ret r31, (r26), 1 EPILOGUE() -DATASTART(approx_tab,2) +DATASTART(approx_tab,8) forloop(i,256,512-1,dnl ` .word eval(0x7fd00/i) ')dnl + SIZE(approx_tab, 512) + TYPE(approx_tab, object) DATAEND() ASM_END() |