1*f81b1c5bSmrgdnl  AMD64 MULX/ADX simulation support, function call version.
2*f81b1c5bSmrg
3*f81b1c5bSmrgdnl  Contributed to the GNU project by Torbjörn Granlund.
4*f81b1c5bSmrg
5*f81b1c5bSmrgdnl  Copyright 2013 Free Software Foundation, Inc.
6*f81b1c5bSmrg
7*f81b1c5bSmrgdnl  This file is part of the GNU MP Library.
8*f81b1c5bSmrgdnl
9*f81b1c5bSmrgdnl  The GNU MP Library is free software; you can redistribute it and/or modify
10*f81b1c5bSmrgdnl  it under the terms of either:
11*f81b1c5bSmrgdnl
12*f81b1c5bSmrgdnl    * the GNU Lesser General Public License as published by the Free
13*f81b1c5bSmrgdnl      Software Foundation; either version 3 of the License, or (at your
14*f81b1c5bSmrgdnl      option) any later version.
15*f81b1c5bSmrgdnl
16*f81b1c5bSmrgdnl  or
17*f81b1c5bSmrgdnl
18*f81b1c5bSmrgdnl    * the GNU General Public License as published by the Free Software
19*f81b1c5bSmrgdnl      Foundation; either version 2 of the License, or (at your option) any
20*f81b1c5bSmrgdnl      later version.
21*f81b1c5bSmrgdnl
22*f81b1c5bSmrgdnl  or both in parallel, as here.
23*f81b1c5bSmrgdnl
24*f81b1c5bSmrgdnl  The GNU MP Library is distributed in the hope that it will be useful, but
25*f81b1c5bSmrgdnl  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
26*f81b1c5bSmrgdnl  or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
27*f81b1c5bSmrgdnl  for more details.
28*f81b1c5bSmrgdnl
29*f81b1c5bSmrgdnl  You should have received copies of the GNU General Public License and the
30*f81b1c5bSmrgdnl  GNU Lesser General Public License along with the GNU MP Library.  If not,
31*f81b1c5bSmrgdnl  see https://www.gnu.org/licenses/.
32*f81b1c5bSmrg
33*f81b1c5bSmrg
34*f81b1c5bSmrgdefine(`adox',`
35*f81b1c5bSmrg	push	$1
36*f81b1c5bSmrg	push	$2
37*f81b1c5bSmrg	call	__gmp_adox
38*f81b1c5bSmrg	pop	$2
39*f81b1c5bSmrg')
40*f81b1c5bSmrg
41*f81b1c5bSmrgdefine(`adcx',`
42*f81b1c5bSmrg	push	$1
43*f81b1c5bSmrg	push	$2
44*f81b1c5bSmrg	call	__gmp_adcx
45*f81b1c5bSmrg	pop	$2
46*f81b1c5bSmrg')
47*f81b1c5bSmrg
48*f81b1c5bSmrgdefine(`mulx',`
49*f81b1c5bSmrg	push	$1
50*f81b1c5bSmrg	call	__gmp_mulx
51*f81b1c5bSmrg	pop	$2
52*f81b1c5bSmrg	pop	$3
53*f81b1c5bSmrg')
54