aorrlsh1_n.asm revision 1.1.1.2
189580Smsmithdnl  AMD64 mpn_addlsh1_n -- rp[] = up[] + (vp[] << 1)
289580Smsmithdnl  AMD64 mpn_rsblsh1_n -- rp[] = (vp[] << 1) - up[]
389580Smsmith
489580Smsmithdnl  Contributed to the GNU project by Torbjorn Granlund.
589580Smsmith
689580Smsmithdnl  Copyright 2008, 2010-2012 Free Software Foundation, Inc.
789580Smsmith
889580Smsmithdnl  This file is part of the GNU MP Library.
989580Smsmithdnl
1089580Smsmithdnl  The GNU MP Library is free software; you can redistribute it and/or modify
1189580Smsmithdnl  it under the terms of either:
1289580Smsmithdnl
1389580Smsmithdnl    * the GNU Lesser General Public License as published by the Free
1489580Smsmithdnl      Software Foundation; either version 3 of the License, or (at your
1589580Smsmithdnl      option) any later version.
1689580Smsmithdnl
1789580Smsmithdnl  or
1889580Smsmithdnl
1989580Smsmithdnl    * the GNU General Public License as published by the Free Software
2089580Smsmithdnl      Foundation; either version 2 of the License, or (at your option) any
2189580Smsmithdnl      later version.
2289580Smsmithdnl
2389580Smsmithdnl  or both in parallel, as here.
2489580Smsmithdnl
2589580Smsmithdnl  The GNU MP Library is distributed in the hope that it will be useful, but
2689580Smsmithdnl  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
2789580Smsmithdnl  or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
2889580Smsmithdnl  for more details.
2989580Smsmithdnl
3089580Smsmithdnl  You should have received copies of the GNU General Public License and the
3189580Smsmithdnl  GNU Lesser General Public License along with the GNU MP Library.  If not,
3289580Smsmithdnl  see https://www.gnu.org/licenses/.
3389580Smsmith
3489580Smsmithinclude(`../config.m4')
3589580Smsmith
3689580Smsmithdefine(LSH, 1)
3789580Smsmithdefine(RSH, 63)
3889580Smsmith
3989580Smsmithifdef(`OPERATION_addlsh1_n', `
4089580Smsmith	define(ADDSUB,	add)
4189580Smsmith	define(ADCSBB,	adc)
4289580Smsmith	define(func,	mpn_addlsh1_n)')
4389580Smsmithifdef(`OPERATION_rsblsh1_n', `
4495533Smike	define(ADDSUB,	sub)
4589580Smsmith	define(ADCSBB,	sbb)
4689580Smsmith	define(func,	mpn_rsblsh1_n)')
4789580Smsmith
4889580SmsmithMULFUNC_PROLOGUE(mpn_addlsh1_n mpn_rsblsh1_n)
49114001Sscottl
5089580SmsmithABI_SUPPORT(DOS64)
51114001SscottlABI_SUPPORT(STD64)
5289580Smsmith
5389580Smsmithinclude_mpn(`x86_64/aorrlshC_n.asm')
5489580Smsmith