aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Sawdey <acsawdey@linux.vnet.ibm.com>2016-09-24 18:14:21 +0000
committerAaron Sawdey <acsawdey@gcc.gnu.org>2016-09-24 13:14:21 -0500
commit33a44e1580ac6e4eeda74ddde429c74beea442d3 (patch)
tree0d5a07926dee5425c784e8bbeec3167824104220
parenteb657a49265a488e6ffc84da3fba78999f118901 (diff)
downloadgcc-33a44e1580ac6e4eeda74ddde429c74beea442d3.zip
gcc-33a44e1580ac6e4eeda74ddde429c74beea442d3.tar.gz
gcc-33a44e1580ac6e4eeda74ddde429c74beea442d3.tar.bz2
rs6000.c (expand_block_compare, [...]): Change TARGET_LITTLE_ENDIAN to !BYTES_BIG_ENDIAN.
2016-09-24 Aaron Sawdey <acsawdey@linux.vnet.ibm.com> * config/rs6000/rs6000.c (expand_block_compare, do_load_for_compare): Change TARGET_LITTLE_ENDIAN to !BYTES_BIG_ENDIAN. From-SVN: r240466
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/rs6000/rs6000.c12
2 files changed, 11 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2600e14..ab5e5ad 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2016-09-24 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
+
+ * config/rs6000/rs6000.c (expand_block_compare, do_load_for_compare):
+ Change TARGET_LITTLE_ENDIAN to !BYTES_BIG_ENDIAN.
+
2016-09-42 David Edelsohn <dje.gcc@gmail.com>
* configure.ac (gcc_cv_as_aix_dwloc): Fix typo in assembly fragment.
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 7c8a82f..5d189fc 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -18482,7 +18482,7 @@ do_load_for_compare (rtx reg, rtx mem, machine_mode mode)
case HImode:
{
rtx src = mem;
- if (TARGET_LITTLE_ENDIAN)
+ if (!BYTES_BIG_ENDIAN)
{
src = gen_reg_rtx (HImode);
emit_insn (gen_bswaphi2 (src, mem));
@@ -18493,7 +18493,7 @@ do_load_for_compare (rtx reg, rtx mem, machine_mode mode)
case SImode:
{
rtx src = mem;
- if (TARGET_LITTLE_ENDIAN)
+ if (!BYTES_BIG_ENDIAN)
{
src = gen_reg_rtx (SImode);
emit_insn (gen_bswapsi2 (src, mem));
@@ -18502,7 +18502,7 @@ do_load_for_compare (rtx reg, rtx mem, machine_mode mode)
}
break;
case DImode:
- if (TARGET_LITTLE_ENDIAN)
+ if (!BYTES_BIG_ENDIAN)
emit_insn (gen_bswapdi2 (reg, mem));
else
emit_insn (gen_movdi (reg, mem));
@@ -18521,7 +18521,7 @@ do_load_for_compare (rtx reg, rtx mem, machine_mode mode)
case HImode:
{
rtx src = mem;
- if (TARGET_LITTLE_ENDIAN)
+ if (!BYTES_BIG_ENDIAN)
{
src = gen_reg_rtx (HImode);
emit_insn (gen_bswaphi2 (src, mem));
@@ -18530,7 +18530,7 @@ do_load_for_compare (rtx reg, rtx mem, machine_mode mode)
break;
}
case SImode:
- if (TARGET_LITTLE_ENDIAN)
+ if (!BYTES_BIG_ENDIAN)
emit_insn (gen_bswapsi2 (reg, mem));
else
emit_insn (gen_movsi (reg, mem));
@@ -18667,7 +18667,7 @@ expand_block_compare (rtx operands[])
/* If we have an LE target without ldbrx and word_mode is DImode,
then we must avoid using word_mode. */
- int word_mode_ok = !(TARGET_LITTLE_ENDIAN && !TARGET_LDBRX
+ int word_mode_ok = !(!BYTES_BIG_ENDIAN && !TARGET_LDBRX
&& word_mode == DImode);
/* Strategy phase. How many ops will this take and should we expand it? */