drm/i915: Use the spin_lock_irq() family of functions
[dragonfly.git] / contrib / gmp / mpz / set.c
blobd7366c837baf39bb99f62d5a86b26c9444d3cfab
1 /* mpz_set (dest_integer, src_integer) -- Assign DEST_INTEGER from SRC_INTEGER.
3 Copyright 1991, 1993, 1994, 1995, 2000 Free Software Foundation, Inc.
5 This file is part of the GNU MP Library.
7 The GNU MP Library is free software; you can redistribute it and/or modify
8 it under the terms of the GNU Lesser General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or (at your
10 option) any later version.
12 The GNU MP Library is distributed in the hope that it will be useful, but
13 WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
15 License for more details.
17 You should have received a copy of the GNU Lesser General Public License
18 along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */
20 #include "gmp.h"
21 #include "gmp-impl.h"
24 #ifdef BERKELEY_MP
25 #include "mp.h"
26 #define FUNCTION move
27 #define ARGUMENTS mpz_srcptr u, mpz_ptr w
29 #else
30 #define FUNCTION mpz_set
31 #define ARGUMENTS mpz_ptr w, mpz_srcptr u
33 #endif
36 void
37 FUNCTION (ARGUMENTS)
39 mp_ptr wp, up;
40 mp_size_t usize, size;
42 usize = u->_mp_size;
43 size = ABS (usize);
45 if (w->_mp_alloc < size)
46 _mpz_realloc (w, size);
48 wp = w->_mp_d;
49 up = u->_mp_d;
51 MPN_COPY (wp, up, size);
52 w->_mp_size = usize;