[Gmp-commit] /var/hg/gmp: Reorganise x86/atom addlsh1_n and rsblsh1_n.
mercurial at gmplib.org
mercurial at gmplib.org
Mon Feb 21 11:45:46 CET 2011
details: /var/hg/gmp/rev/503b02006b3b
changeset: 13873:503b02006b3b
user: Torbjorn Granlund <tege at gmplib.org>
date: Mon Feb 21 11:45:42 2011 +0100
description:
Reorganise x86/atom addlsh1_n and rsblsh1_n.
diffstat:
ChangeLog | 7 ++++++-
mpn/x86/atom/addlsh1_n.asm | 23 -----------------------
mpn/x86/atom/aorrlsh1_n.asm | 42 ++++++++++++++++++++++++++++++++++++++++++
mpn/x86/atom/rsblsh1_n.asm | 42 ------------------------------------------
4 files changed, 48 insertions(+), 66 deletions(-)
diffs (133 lines):
diff -r 32090a8bebb1 -r 503b02006b3b ChangeLog
--- a/ChangeLog Sun Feb 20 20:13:18 2011 +0100
+++ b/ChangeLog Mon Feb 21 11:45:42 2011 +0100
@@ -1,4 +1,9 @@
-2011-02-20 Torbjorn Granlund <tege at gmplib.org>
+2011-02-21 Torbjorn Granlund <tege at gmplib.org>
+
+ * mpn/x86/atom/aorrlsh1_n.asm: New file (code from rsblsh_1, slightly
+ slower for addlsh_1 for large operands, but much faster for small).
+ * mpn/x86/atom/addlsh1_n.asm: Remove.
+ * mpn/x86/atom/rsblsh1_n.asm: Remove.
2011-02-20 Marc Glisse <marc.glisse at inria.fr>
diff -r 32090a8bebb1 -r 503b02006b3b mpn/x86/atom/addlsh1_n.asm
--- a/mpn/x86/atom/addlsh1_n.asm Sun Feb 20 20:13:18 2011 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-dnl Intel Atom mpn_addlsh1_n -- rp[] = up[] + (vp[] << 1)
-
-dnl Copyright 2011 Free Software Foundation, Inc.
-dnl
-dnl This file is part of the GNU MP Library.
-dnl
-dnl The GNU MP Library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public License as
-dnl published by the Free Software Foundation; either version 3 of the
-dnl License, or (at your option) any later version.
-dnl
-dnl The GNU MP Library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public License
-dnl along with the GNU MP Library. If not, see http://www.gnu.org/licenses/.
-
-include(`../config.m4')
-
-MULFUNC_PROLOGUE(mpn_addlsh1_n)
-include_mpn(`x86/k7/addlsh1_n.asm')
diff -r 32090a8bebb1 -r 503b02006b3b mpn/x86/atom/aorrlsh1_n.asm
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mpn/x86/atom/aorrlsh1_n.asm Mon Feb 21 11:45:42 2011 +0100
@@ -0,0 +1,42 @@
+dnl Intel Atom mpn_rsblsh1_n -- rp[] = (vp[] << 1) - up[]
+
+dnl Contributed to the GNU project by Marco Bodrato.
+
+dnl Copyright 2011 Free Software Foundation, Inc.
+dnl
+dnl This file is part of the GNU MP Library.
+dnl
+dnl The GNU MP Library is free software; you can redistribute it and/or
+dnl modify it under the terms of the GNU Lesser General Public License as
+dnl published by the Free Software Foundation; either version 3 of the
+dnl License, or (at your option) any later version.
+dnl
+dnl The GNU MP Library is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+dnl Lesser General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU Lesser General Public License
+dnl along with the GNU MP Library. If not, see http://www.gnu.org/licenses/.
+
+include(`../config.m4')
+
+define(LSH, 1)
+define(RSH, 31)
+
+ifdef(`OPERATION_addlsh1_n', `
+ define(M4_inst, adc)
+ define(M4_opp, sub)
+ define(M4_function, mpn_addlsh1_n)
+ define(M4_function_c, mpn_addlsh1_nc)
+',`ifdef(`OPERATION_rsblsh1_n', `
+ define(M4_inst, sbb)
+ define(M4_opp, add)
+ define(M4_function, mpn_rsblsh1_n)
+ define(M4_function_c, mpn_rsblsh1_nc)
+',`m4_error(`Need OPERATION_addlsh1_n or OPERATION_rsblsh1_n
+')')')
+
+MULFUNC_PROLOGUE(mpn_addlsh1_n mpn_addlsh1_nc mpn_rsblsh1_n mpn_rsblsh1_nc)
+
+include_mpn(`x86/atom/aorrlshC_n.asm')
diff -r 32090a8bebb1 -r 503b02006b3b mpn/x86/atom/rsblsh1_n.asm
--- a/mpn/x86/atom/rsblsh1_n.asm Sun Feb 20 20:13:18 2011 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-dnl Intel Atom mpn_rsblsh1_n -- rp[] = (vp[] << 1) - up[]
-
-dnl Contributed to the GNU project by Marco Bodrato.
-
-dnl Copyright 2011 Free Software Foundation, Inc.
-dnl
-dnl This file is part of the GNU MP Library.
-dnl
-dnl The GNU MP Library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public License as
-dnl published by the Free Software Foundation; either version 3 of the
-dnl License, or (at your option) any later version.
-dnl
-dnl The GNU MP Library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public License
-dnl along with the GNU MP Library. If not, see http://www.gnu.org/licenses/.
-
-include(`../config.m4')
-
-define(LSH, 1)
-define(RSH, 31)
-
-ifdef(`OPERATION_addlsh1_n', `
- define(M4_inst, adcl)
- define(M4_opp, subl)
- define(M4_function, mpn_addlsh1_n)
- define(M4_function_c, mpn_addlsh1_nc)
-',`ifdef(`OPERATION_rsblsh1_n', `
- define(M4_inst, sbbl)
- define(M4_opp, addl)
- define(M4_function, mpn_rsblsh1_n)
- define(M4_function_c, mpn_rsblsh1_nc)
-',`m4_error(`Need OPERATION_addlsh1_n or OPERATION_rsblsh1_n
-')')')
-
-MULFUNC_PROLOGUE(mpn_rsblsh1_n mpn_rsblsh1_nc)
-
-include_mpn(`x86/atom/aorrlshC_n.asm')
More information about the gmp-commit
mailing list