[ARM] 4630/1: Fix the vector stride of the double vector instruction.

The vector stride of the double-precision vector instructions must be changed
to 1-2 from even 2-4, because the double registers numbering has been
changed to 0-15 from even 0-30 by
1356c1948da967bc1d4c663762bfe21dfcec4b2f commit.

Signed-off-by: Takashi Ohmasa <ohmasa.takashi@jp.panasonic.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

authored by Takashi Ohmasa and committed by Russell King b9a5ce3c 67f18f34

+4 -4
+4 -4
arch/arm/vfp/vfpdouble.c
··· 1132 unsigned int vecitr, veclen, vecstride; 1133 struct op *fop; 1134 1135 - vecstride = (1 + ((fpscr & FPSCR_STRIDE_MASK) == FPSCR_STRIDE_MASK)) * 2; 1136 1137 fop = (op == FOP_EXT) ? &fops_ext[FEXT_TO_IDX(inst)] : &fops[FOP_TO_IDX(op)]; 1138 ··· 1184 * CHECK: It appears to be undefined whether we stop when 1185 * we encounter an exception. We continue. 1186 */ 1187 - dest = FREG_BANK(dest) + ((FREG_IDX(dest) + vecstride) & 6); 1188 - dn = FREG_BANK(dn) + ((FREG_IDX(dn) + vecstride) & 6); 1189 if (FREG_BANK(dm) != 0) 1190 - dm = FREG_BANK(dm) + ((FREG_IDX(dm) + vecstride) & 6); 1191 } 1192 return exceptions; 1193
··· 1132 unsigned int vecitr, veclen, vecstride; 1133 struct op *fop; 1134 1135 + vecstride = (1 + ((fpscr & FPSCR_STRIDE_MASK) == FPSCR_STRIDE_MASK)); 1136 1137 fop = (op == FOP_EXT) ? &fops_ext[FEXT_TO_IDX(inst)] : &fops[FOP_TO_IDX(op)]; 1138 ··· 1184 * CHECK: It appears to be undefined whether we stop when 1185 * we encounter an exception. We continue. 1186 */ 1187 + dest = FREG_BANK(dest) + ((FREG_IDX(dest) + vecstride) & 3); 1188 + dn = FREG_BANK(dn) + ((FREG_IDX(dn) + vecstride) & 3); 1189 if (FREG_BANK(dm) != 0) 1190 + dm = FREG_BANK(dm) + ((FREG_IDX(dm) + vecstride) & 3); 1191 } 1192 return exceptions; 1193