vector.md (vec_pack_trunc_v2df): Revert previous little endian change.
2013-11-21 Bill Schmidt <wschmidt@vnet.ibm.com> * config/rs6000/vector.md (vec_pack_trunc_v2df): Revert previous little endian change. (vec_pack_sfix_trunc_v2df): Likewise. (vec_pack_ufix_trunc_v2df): Likewise. * config/rs6000/rs6000.c (rs6000_expand_interleave): Correct double checking of endianness. From-SVN: r205241
This commit is contained in:
parent
ce7e41fc9a
commit
5b3f0a5475
@ -1,3 +1,12 @@
|
||||
2013-11-21 Bill Schmidt <wschmidt@vnet.ibm.com>
|
||||
|
||||
* config/rs6000/vector.md (vec_pack_trunc_v2df): Revert previous
|
||||
little endian change.
|
||||
(vec_pack_sfix_trunc_v2df): Likewise.
|
||||
(vec_pack_ufix_trunc_v2df): Likewise.
|
||||
* config/rs6000/rs6000.c (rs6000_expand_interleave): Correct
|
||||
double checking of endianness.
|
||||
|
||||
2013-11-22 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* tree-vect-generic.c (optimize_vector_constructor): New function.
|
||||
|
@ -30116,7 +30116,7 @@ rs6000_expand_interleave (rtx target, rtx op0, rtx op1, bool highp)
|
||||
unsigned i, high, nelt = GET_MODE_NUNITS (vmode);
|
||||
rtx perm[16];
|
||||
|
||||
high = (highp == BYTES_BIG_ENDIAN ? 0 : nelt / 2);
|
||||
high = (highp ? 0 : nelt / 2);
|
||||
for (i = 0; i < nelt / 2; i++)
|
||||
{
|
||||
perm[i * 2] = GEN_INT (i + high);
|
||||
|
@ -831,12 +831,7 @@
|
||||
|
||||
emit_insn (gen_vsx_xvcvdpsp (r1, operands[1]));
|
||||
emit_insn (gen_vsx_xvcvdpsp (r2, operands[2]));
|
||||
|
||||
if (BYTES_BIG_ENDIAN)
|
||||
rs6000_expand_extract_even (operands[0], r1, r2);
|
||||
else
|
||||
rs6000_expand_extract_even (operands[0], r2, r1);
|
||||
|
||||
rs6000_expand_extract_even (operands[0], r1, r2);
|
||||
DONE;
|
||||
})
|
||||
|
||||
@ -851,12 +846,7 @@
|
||||
|
||||
emit_insn (gen_vsx_xvcvdpsxws (r1, operands[1]));
|
||||
emit_insn (gen_vsx_xvcvdpsxws (r2, operands[2]));
|
||||
|
||||
if (BYTES_BIG_ENDIAN)
|
||||
rs6000_expand_extract_even (operands[0], r1, r2);
|
||||
else
|
||||
rs6000_expand_extract_even (operands[0], r2, r1);
|
||||
|
||||
rs6000_expand_extract_even (operands[0], r1, r2);
|
||||
DONE;
|
||||
})
|
||||
|
||||
@ -871,12 +861,7 @@
|
||||
|
||||
emit_insn (gen_vsx_xvcvdpuxws (r1, operands[1]));
|
||||
emit_insn (gen_vsx_xvcvdpuxws (r2, operands[2]));
|
||||
|
||||
if (BYTES_BIG_ENDIAN)
|
||||
rs6000_expand_extract_even (operands[0], r1, r2);
|
||||
else
|
||||
rs6000_expand_extract_even (operands[0], r2, r1);
|
||||
|
||||
rs6000_expand_extract_even (operands[0], r1, r2);
|
||||
DONE;
|
||||
})
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user