FastTrac In-Reply-To: <200802291118.m1TBIYpu010661 at sac.sfbay.sun.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-OpenSolaris-URL: http://www.opensolaris.org/jive/message.jspa?messageID=210525&tstart=0#210525
> GNU MP is designed to be as fast as possible, both > for small operands and huge > operands. The speed is achieved by using fullwords > as the basic arithmetic > type, by using fast algorithms, with carefully > optimized assembly code for the > most common inner loops for lots of CPUs, and by a > general emphasis on speed > (instead of simplicity or elegance). Note that some of these speed improvements are only available with the gcc compiler (at least for now). I don't know how relevant this is to an ARC case though. Also, the optimizations are very different from one platform to an other. For instance, on ultrasparc4, it uses the FPU. But on niagara1 it does not (or should not, I don't remember if it has been patched already). If speed is an important feature, it would make sense to ship several versions. > The optional C++ support is also not provided due to > the well known ABI > issues with providing C++ libaries on Solaris (g++ vs > Sun C++), a future > case may be submitted to provide the C++ libaries if > there is sufficient > demand and/or the ABI issue is resolved. Six C++ operators are declared in gmp.h (but the corresponding symbols are apparently defined in libgmpxx). It can be confusing then to have declarations but not the actual symbol. Although this way users can compile their own libgmpxx and still use the system gmp.h. It is probably easiest to just accept whatever upstream did (ie leave the 6 operators). Out of curiosity, are you planning on integrating mpfr next? This message posted from opensolaris.org