[Gmp-commit] /var/hg/gmp: Update TODO list.
mercurial at gmplib.org
mercurial at gmplib.org
Mon Feb 28 16:40:56 CET 2011
details: /var/hg/gmp/rev/e8414fc82069
changeset: 13934:e8414fc82069
user: Torbjorn Granlund <tege at gmplib.org>
date: Mon Feb 28 16:40:50 2011 +0100
description:
Update TODO list.
diffstat:
mpn/x86/atom/sse2/mul_basecase.asm | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diffs (22 lines):
diff -r ab657cfe1a12 -r e8414fc82069 mpn/x86/atom/sse2/mul_basecase.asm
--- a/mpn/x86/atom/sse2/mul_basecase.asm Mon Feb 28 16:36:33 2011 +0100
+++ b/mpn/x86/atom/sse2/mul_basecase.asm Mon Feb 28 16:40:50 2011 +0100
@@ -25,14 +25,16 @@
C TODO
C * Check if 'jmp N(%esp)' is well-predicted enough to allow us to combine the
C 4 large loops into one; we could use it for the outer loop branch.
-C * Optimise code outside if inner loops.
+C * Optimise code outside of inner loops.
C * Play with rp and up offsets to save a bunch of lea insns.
C * Write combined addmul_1 feed-in a wind-down code, and use when iterating
C outer each loop. ("Overlapping software pipelining")
-C * Postpone push of ebx until we know vn > 1.
+C * Postpone push of ebx until we know vn > 1. Perhaps use caller-saves regs
+C for inlined mul_1, allowing us to postpone all pushes.
C * Perhaps write special code for un < M, for some small M.
C * Replace addmul_1 loop by less pipelined loop. This could save perhaps 25%
C of the code size.
+C * Replace inlined addmul_1 with smaller code from aorsmul_1.asm.
C void mpn_mul_basecase (mp_ptr wp,
C mp_srcptr xp, mp_size_t xn,
More information about the gmp-commit
mailing list