This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: Portable "add with carry" loop for arbitrary precision arithmetic
- From: Ian Lance Taylor <iant at google dot com>
- To: "Alexander Konovalenko" <alexkon at gmail dot com>
- Cc: gcc-help at gcc dot gnu dot org
- Date: Mon, 23 Jun 2008 06:48:38 -0700
- Subject: Re: Portable "add with carry" loop for arbitrary precision arithmetic
- References: <c7b40f9d0806221803o3611616by4a47b790ea96eee5@mail.gmail.com>
"Alexander Konovalenko" <alexkon@gmail.com> writes:
> There is an "add with carry" instruction on some architectures which
> enables efficient implementation of arbitrary precision (bignum)
> integer addition. Is it possible to make gcc generate efficient
> machine code from pure C or C++ code for bignum addition on those
> architectures?
>
> It looks like the popular libraries like GMP and CLN use hand-coded
> assembly for that. I wonder if gcc can help rewrite that kind of code
> in a more portable way.
In general, no, except for the limiting case of the "long long" type.
gcc doesn't provide any machine independent access to the carry flag.
Ian