git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Revert to Fedora kernel-2.6.17-1.2187_FC5 patched with vs2.0.2.1; there are too many...
[linux-2.6.git]
/
arch
/
arm
/
vfp
/
vfpdouble.c
diff --git
a/arch/arm/vfp/vfpdouble.c
b/arch/arm/vfp/vfpdouble.c
index
add48e3
..
009038c
100644
(file)
--- a/
arch/arm/vfp/vfpdouble.c
+++ b/
arch/arm/vfp/vfpdouble.c
@@
-195,7
+195,7
@@
u32 vfp_double_normaliseround(int dd, struct vfp_double *vd, u32 fpscr, u32 exce
s64 d = vfp_double_pack(vd);
pr_debug("VFP: %s: d(d%d)=%016llx exceptions=%08x\n", func,
dd, d, exceptions);
s64 d = vfp_double_pack(vd);
pr_debug("VFP: %s: d(d%d)=%016llx exceptions=%08x\n", func,
dd, d, exceptions);
- vfp_put_double(d
, d
d);
+ vfp_put_double(d
d,
d);
}
return exceptions;
}
}
return exceptions;
}
@@
-250,19
+250,19
@@
vfp_propagate_nan(struct vfp_double *vdd, struct vfp_double *vdn,
*/
static u32 vfp_double_fabs(int dd, int unused, int dm, u32 fpscr)
{
*/
static u32 vfp_double_fabs(int dd, int unused, int dm, u32 fpscr)
{
- vfp_put_double(
vfp_double_packed_abs(vfp_get_double(dm)), dd
);
+ vfp_put_double(
dd, vfp_double_packed_abs(vfp_get_double(dm))
);
return 0;
}
static u32 vfp_double_fcpy(int dd, int unused, int dm, u32 fpscr)
{
return 0;
}
static u32 vfp_double_fcpy(int dd, int unused, int dm, u32 fpscr)
{
- vfp_put_double(
vfp_get_double(dm), dd
);
+ vfp_put_double(
dd, vfp_get_double(dm)
);
return 0;
}
static u32 vfp_double_fneg(int dd, int unused, int dm, u32 fpscr)
{
return 0;
}
static u32 vfp_double_fneg(int dd, int unused, int dm, u32 fpscr)
{
- vfp_put_double(
vfp_double_packed_negate(vfp_get_double(dm)), dd
);
+ vfp_put_double(
dd, vfp_double_packed_negate(vfp_get_double(dm))
);
return 0;
}
return 0;
}
@@
-287,7
+287,7
@@
static u32 vfp_double_fsqrt(int dd, int unused, int dm, u32 fpscr)
vdp = &vfp_double_default_qnan;
ret = FPSCR_IOC;
}
vdp = &vfp_double_default_qnan;
ret = FPSCR_IOC;
}
- vfp_put_double(
vfp_double_pack(vdp), dd
);
+ vfp_put_double(
dd, vfp_double_pack(vdp)
);
return ret;
}
return ret;
}
@@
-465,7
+465,7
@@
static u32 vfp_double_fcvts(int sd, int unused, int dm, u32 fpscr)
*/
if (tm & (VFP_INFINITY|VFP_NAN)) {
vsd.exponent = 255;
*/
if (tm & (VFP_INFINITY|VFP_NAN)) {
vsd.exponent = 255;
- if (tm
== VFP_Q
NAN)
+ if (tm
& VFP_
NAN)
vsd.significand |= VFP_SINGLE_SIGNIFICAND_QNAN;
goto pack_nan;
} else if (tm & VFP_ZERO)
vsd.significand |= VFP_SINGLE_SIGNIFICAND_QNAN;
goto pack_nan;
} else if (tm & VFP_ZERO)
@@
-476,7
+476,7
@@
static u32 vfp_double_fcvts(int sd, int unused, int dm, u32 fpscr)
return vfp_single_normaliseround(sd, &vsd, fpscr, exceptions, "fcvts");
pack_nan:
return vfp_single_normaliseround(sd, &vsd, fpscr, exceptions, "fcvts");
pack_nan:
- vfp_put_float(
vfp_single_pack(&vsd), sd
);
+ vfp_put_float(
sd, vfp_single_pack(&vsd)
);
return exceptions;
}
return exceptions;
}
@@
-573,7
+573,7
@@
static u32 vfp_double_ftoui(int sd, int unused, int dm, u32 fpscr)
pr_debug("VFP: ftoui: d(s%d)=%08x exceptions=%08x\n", sd, d, exceptions);
pr_debug("VFP: ftoui: d(s%d)=%08x exceptions=%08x\n", sd, d, exceptions);
- vfp_put_float(
d, s
d);
+ vfp_put_float(
sd,
d);
return exceptions;
}
return exceptions;
}
@@
-648,7
+648,7
@@
static u32 vfp_double_ftosi(int sd, int unused, int dm, u32 fpscr)
pr_debug("VFP: ftosi: d(s%d)=%08x exceptions=%08x\n", sd, d, exceptions);
pr_debug("VFP: ftosi: d(s%d)=%08x exceptions=%08x\n", sd, d, exceptions);
- vfp_put_float(
(s32)d, s
d);
+ vfp_put_float(
sd, (s32)
d);
return exceptions;
}
return exceptions;
}
@@
-1084,7
+1084,7
@@
static u32 vfp_double_fdiv(int dd, int dn, int dm, u32 fpscr)
vdn_nan:
exceptions = vfp_propagate_nan(&vdd, &vdn, &vdm, fpscr);
pack:
vdn_nan:
exceptions = vfp_propagate_nan(&vdd, &vdn, &vdm, fpscr);
pack:
- vfp_put_double(
vfp_double_pack(&vdd), dd
);
+ vfp_put_double(
dd, vfp_double_pack(&vdd)
);
return exceptions;
vdm_nan:
return exceptions;
vdm_nan:
@@
-1104,7
+1104,7
@@
static u32 vfp_double_fdiv(int dd, int dn, int dm, u32 fpscr)
goto pack;
invalid:
goto pack;
invalid:
- vfp_put_double(
vfp_double_pack(&vfp_double_default_qnan), dd
);
+ vfp_put_double(
dd, vfp_double_pack(&vfp_double_default_qnan)
);
return FPSCR_IOC;
}
return FPSCR_IOC;
}
@@
-1127,7
+1127,7
@@
u32 vfp_double_cpdo(u32 inst, u32 fpscr)
{
u32 op = inst & FOP_MASK;
u32 exceptions = 0;
{
u32 op = inst & FOP_MASK;
u32 exceptions = 0;
- unsigned int d
est
;
+ unsigned int d
d = vfp_get_dd(inst)
;
unsigned int dn = vfp_get_dn(inst);
unsigned int dm = vfp_get_dm(inst);
unsigned int vecitr, veclen, vecstride;
unsigned int dn = vfp_get_dn(inst);
unsigned int dm = vfp_get_dm(inst);
unsigned int vecitr, veclen, vecstride;
@@
-1136,21
+1136,11
@@
u32 vfp_double_cpdo(u32 inst, u32 fpscr)
veclen = fpscr & FPSCR_LENGTH_MASK;
vecstride = (1 + ((fpscr & FPSCR_STRIDE_MASK) == FPSCR_STRIDE_MASK)) * 2;
veclen = fpscr & FPSCR_LENGTH_MASK;
vecstride = (1 + ((fpscr & FPSCR_STRIDE_MASK) == FPSCR_STRIDE_MASK)) * 2;
- /*
- * fcvtds takes an sN register number as destination, not dN.
- * It also always operates on scalars.
- */
- if ((inst & FEXT_MASK) == FEXT_FCVT) {
- veclen = 0;
- dest = vfp_get_sd(inst);
- } else
- dest = vfp_get_dd(inst);
-
/*
* If destination bank is zero, vector length is always '1'.
* ARM DDI0100F C5.1.3, C5.3.2.
*/
/*
* If destination bank is zero, vector length is always '1'.
* ARM DDI0100F C5.1.3, C5.3.2.
*/
- if (FREG_BANK(d
est
) == 0)
+ if (FREG_BANK(d
d
) == 0)
veclen = 0;
pr_debug("VFP: vecstride=%u veclen=%u\n", vecstride,
veclen = 0;
pr_debug("VFP: vecstride=%u veclen=%u\n", vecstride,
@@
-1163,20
+1153,16
@@
u32 vfp_double_cpdo(u32 inst, u32 fpscr)
for (vecitr = 0; vecitr <= veclen; vecitr += 1 << FPSCR_LENGTH_BIT) {
u32 except;
for (vecitr = 0; vecitr <= veclen; vecitr += 1 << FPSCR_LENGTH_BIT) {
u32 except;
- if (op == FOP_EXT && (inst & FEXT_MASK) == FEXT_FCVT)
- pr_debug("VFP: itr%d (s%u) = op[%u] (d%u)\n",
- vecitr >> FPSCR_LENGTH_BIT,
- dest, dn, dm);
- else if (op == FOP_EXT)
+ if (op == FOP_EXT)
pr_debug("VFP: itr%d (d%u) = op[%u] (d%u)\n",
vecitr >> FPSCR_LENGTH_BIT,
pr_debug("VFP: itr%d (d%u) = op[%u] (d%u)\n",
vecitr >> FPSCR_LENGTH_BIT,
- d
est
, dn, dm);
+ d
d
, dn, dm);
else
pr_debug("VFP: itr%d (d%u) = (d%u) op[%u] (d%u)\n",
vecitr >> FPSCR_LENGTH_BIT,
else
pr_debug("VFP: itr%d (d%u) = (d%u) op[%u] (d%u)\n",
vecitr >> FPSCR_LENGTH_BIT,
- d
est
, dn, FOP_TO_IDX(op), dm);
+ d
d
, dn, FOP_TO_IDX(op), dm);
- except = fop(d
est
, dn, dm, fpscr);
+ except = fop(d
d
, dn, dm, fpscr);
pr_debug("VFP: itr%d: exceptions=%08x\n",
vecitr >> FPSCR_LENGTH_BIT, except);
pr_debug("VFP: itr%d: exceptions=%08x\n",
vecitr >> FPSCR_LENGTH_BIT, except);
@@
-1194,7
+1180,7
@@
u32 vfp_double_cpdo(u32 inst, u32 fpscr)
* we encounter an exception. We continue.
*/
* we encounter an exception. We continue.
*/
- d
est = FREG_BANK(dest) + ((FREG_IDX(dest
) + vecstride) & 6);
+ d
d = FREG_BANK(dd) + ((FREG_IDX(dd
) + vecstride) & 6);
dn = FREG_BANK(dn) + ((FREG_IDX(dn) + vecstride) & 6);
if (FREG_BANK(dm) != 0)
dm = FREG_BANK(dm) + ((FREG_IDX(dm) + vecstride) & 6);
dn = FREG_BANK(dn) + ((FREG_IDX(dn) + vecstride) & 6);
if (FREG_BANK(dm) != 0)
dm = FREG_BANK(dm) + ((FREG_IDX(dm) + vecstride) & 6);