diff options
author | wschmidt <wschmidt@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-11-05 14:27:17 +0000 |
---|---|---|
committer | wschmidt <wschmidt@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-11-05 14:27:17 +0000 |
commit | 97ad64282fdf2c111c83e18038ca0c56b3918df3 (patch) | |
tree | 64dbad0ae763433ed801d87a8a7b9e9772fd0bee | |
parent | 300c6ceec3d8a1a5f898c399e63381e3203c24bc (diff) | |
download | ppe42-gcc-97ad64282fdf2c111c83e18038ca0c56b3918df3.tar.gz ppe42-gcc-97ad64282fdf2c111c83e18038ca0c56b3918df3.zip |
2013-11-05 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/vector.md (vec_pack_sfix_trunc_v2df): Adjust for
little endian.
(vec_pack_ufix_trunc_v2df): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204395 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/rs6000/vector.md | 14 |
2 files changed, 18 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9b21a3a5445..938d62b7dd5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2013-11-05 Bill Schmidt <wschmidt@linux.vnet.ibm.com> + + * config/rs6000/vector.md (vec_pack_sfix_trunc_v2df): Adjust for + little endian. + (vec_pack_ufix_trunc_v2df): Likewise. + 2013-11-05 H.J. Lu <hongjiu.lu@intel.com> PR middle-end/58981 diff --git a/gcc/config/rs6000/vector.md b/gcc/config/rs6000/vector.md index 0a1130f7bff..68214d91316 100644 --- a/gcc/config/rs6000/vector.md +++ b/gcc/config/rs6000/vector.md @@ -850,7 +850,12 @@ emit_insn (gen_vsx_xvcvdpsxws (r1, operands[1])); emit_insn (gen_vsx_xvcvdpsxws (r2, operands[2])); - rs6000_expand_extract_even (operands[0], r1, r2); + + if (BYTES_BIG_ENDIAN) + rs6000_expand_extract_even (operands[0], r1, r2); + else + rs6000_expand_extract_even (operands[0], r2, r1); + DONE; }) @@ -865,7 +870,12 @@ emit_insn (gen_vsx_xvcvdpuxws (r1, operands[1])); emit_insn (gen_vsx_xvcvdpuxws (r2, operands[2])); - rs6000_expand_extract_even (operands[0], r1, r2); + + if (BYTES_BIG_ENDIAN) + rs6000_expand_extract_even (operands[0], r1, r2); + else + rs6000_expand_extract_even (operands[0], r2, r1); + DONE; }) |