added libtomfloat-0.01
[libtomfloat.git] / mpf_sqr.c
blob4250b8e797d9822c20b985a41c32cb1e49ccd643
1 /* LibTomFloat, multiple-precision floating-point library
3 * LibTomFloat is a library that provides multiple-precision
4 * floating-point artihmetic as well as trigonometric functionality.
6 * This library requires the public domain LibTomMath to be installed.
7 *
8 * This library is free for all purposes without any express
9 * gurantee it works
11 * Tom St Denis, tomstdenis@iahu.ca, http://float.libtomcrypt.org
13 #include <tomfloat.h>
15 int mpf_sqr(mp_float *a, mp_float *b)
17 int err;
18 if ((err = mp_sqr(&(a->mantissa), &(b->mantissa))) != MP_OKAY) {
19 return err;
21 b->exp = 2 * a->exp;
22 return mpf_normalize(b);