OSDN Git Service

FROMLIST: MIPS: math-emu: Avoid multiple assignment
authorAleksandar Markovic <aleksandar.markovic@mips.com>
Thu, 2 Nov 2017 11:14:04 +0000 (12:14 +0100)
committerGreg Kroah-Hartman <gregkh@google.com>
Mon, 5 Feb 2018 16:58:37 +0000 (08:58 -0800)
Replace several instances of multiple assignment with individual
assignments.

Signed-off-by: Aleksandar Markovic <aleksandar.markovic@mips.com>
(cherry picked from: https://patchwork.linux-mips.org/patch/17587/)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
arch/mips/math-emu/cp1emu.c
arch/mips/math-emu/dp_sqrt.c
arch/mips/math-emu/sp_sqrt.c

index 18ea0b0..42947a1 100644 (file)
@@ -1191,7 +1191,8 @@ emul:
                        if (!cpu_has_mips_r6 || delay_slot(xcp))
                                return SIGILL;
 
-                       cond = likely = 0;
+                       likely = 0;
+                       cond = 0;
                        fpr = &current->thread.fpu.fpr[MIPSInst_RT(ir)];
                        bit0 = get_fpr32(fpr, 0) & 0x1;
                        switch (MIPSInst_RS(ir)) {
index cea907b..fa39eb8 100644 (file)
@@ -91,7 +91,8 @@ union ieee754dp ieee754dp_sqrt(union ieee754dp x)
                scalx -= 256;
        }
 
-       y = x = builddp(0, xe + DP_EBIAS, xm & ~DP_HIDDEN_BIT);
+       x = builddp(0, xe + DP_EBIAS, xm & ~DP_HIDDEN_BIT);
+       y = x;
 
        /* magic initial approximation to almost 8 sig. bits */
        yh = y.bits >> 32;
@@ -108,7 +109,8 @@ union ieee754dp ieee754dp_sqrt(union ieee754dp x)
 
        /* triple to almost 56 sig. bits: y ~= sqrt(x) to within 1 ulp */
        /* t=y*y; z=t;  pt[n0]+=0x00100000; t+=z; z=(x-z)*y; */
-       z = t = ieee754dp_mul(y, y);
+       t = ieee754dp_mul(y, y);
+       z = t;
        t.bexp += 0x001;
        t = ieee754dp_add(t, z);
        z = ieee754dp_mul(ieee754dp_sub(x, z), y);
index 67059c3..9cc83f0 100644 (file)
@@ -82,7 +82,8 @@ union ieee754sp ieee754sp_sqrt(union ieee754sp x)
 
        /* generate sqrt(x) bit by bit */
        ix += ix;
-       q = s = 0;              /* q = sqrt(x) */
+       s = 0;
+       q = 0;                  /* q = sqrt(x) */
        r = 0x01000000;         /* r = moving bit from right to left */
 
        while (r != 0) {