]> git.proxmox.com Git - mirror_qemu.git/blobdiff - libdecnumber/decNumber.c
riscv/sifive_u: Add a serial property to the sifive_u machine
[mirror_qemu.git] / libdecnumber / decNumber.c
index 58211e7afdc0fe5b64e7c112a0cb1b17247cd39f..8c197023f45602484f3ec85c7b9a6f8eb8159826 100644 (file)
 /*     **  -- raise to the power                                     */
 /* ------------------------------------------------------------------ */
 
-#include <stdlib.h>               /* for malloc, free, etc. */
-#include <stdio.h>                /* for printf [if needed] */
-#include <string.h>               /* for strcpy */
-#include <ctype.h>                /* for lower */
+#include "qemu/osdep.h"
 #include "libdecnumber/dconfig.h"
 #include "libdecnumber/decNumber.h"
 #include "libdecnumber/decNumberLocal.h"
@@ -2238,7 +2235,7 @@ decNumber * decNumberPower(decNumber *res, const decNumber *lhs,
       /* if a negative power the constant 1 is needed, and if not subset */
       /* invert the lhs now rather than inverting the result later */
       if (decNumberIsNegative(rhs)) {  /* was a **-n [hence digits>0] */
-       decNumber *inv=invbuff;         /* asssume use fixed buffer */
+       decNumber *inv=invbuff;         /* assume use fixed buffer */
        decNumberCopy(&dnOne, dac);     /* dnOne=1;  [needed now or later] */
        #if DECSUBSET
        if (set->extended) {            /* need to calculate 1/lhs */
@@ -3849,7 +3846,7 @@ static void decToString(const decNumber *dn, char *string, Flag eng) {
 /*                                                                   */
 /* Addition, especially x=x+1, is speed-critical.                    */
 /* The static buffer is larger than might be expected to allow for    */
-/* calls from higher-level funtions (notable exp).                   */
+/* calls from higher-level functions (notably exp).                  */
 /* ------------------------------------------------------------------ */
 static decNumber * decAddOp(decNumber *res, const decNumber *lhs,
                            const decNumber *rhs, decContext *set,
@@ -4263,7 +4260,7 @@ static decNumber * decAddOp(decNumber *res, const decNumber *lhs,
 /* long subtractions.  These are acc and var1 respectively.          */
 /* var1 is a copy of the lhs coefficient, var2 is the rhs coefficient.*/
 /* The static buffers may be larger than might be expected to allow   */
-/* for calls from higher-level funtions (notable exp).               */
+/* for calls from higher-level functions (notably exp).                      */
 /* ------------------------------------------------------------------ */
 static decNumber * decDivideOp(decNumber *res,
                               const decNumber *lhs, const decNumber *rhs,
@@ -4778,7 +4775,7 @@ static decNumber * decDivideOp(decNumber *res,
            half=*up & 0x01;
            *up/=2;                /* [shift] */
            if (!half) continue;
-           *(up-1)+=(DECDPUNMAX+1)/2;
+           *(up-1)+=DIV_ROUND_UP(DECDPUNMAX, 2);
            }
          /* [accunits still describes the original remainder length] */
 
@@ -5254,7 +5251,7 @@ static decNumber * decMultiplyOp(decNumber *res, const decNumber *lhs,
 /*    exp(-x) where x can be the tiniest number (Ntiny).             */
 /*                                                                   */
 /* 2. Normalizing x to be <=0.1 (instead of <=1) reduces loop        */
-/*    iterations by appoximately a third with additional (although    */
+/*    iterations by approximately a third with additional (although    */
 /*    diminishing) returns as the range is reduced to even smaller    */
 /*    fractions.  However, h (the power of 10 used to correct the     */
 /*    result at the end, see below) must be kept <=8 as otherwise     */