diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2015-12-11 00:47:31 +0100 |
---|---|---|
committer | Segher Boessenkool <segher@gcc.gnu.org> | 2015-12-11 00:47:31 +0100 |
commit | 0c91a1fb3c6bf27bd513d6a160bdce14a7070a60 (patch) | |
tree | cdfb92915fbfdba1b278b16908e00337a081c950 /gcc | |
parent | e74f7152e87f9c7b66c3af0e58b70fcd6f9cb042 (diff) | |
download | gcc-0c91a1fb3c6bf27bd513d6a160bdce14a7070a60.zip gcc-0c91a1fb3c6bf27bd513d6a160bdce14a7070a60.tar.gz gcc-0c91a1fb3c6bf27bd513d6a160bdce14a7070a60.tar.bz2 |
rtlanal: Fix bits/bytes confusion in set_noop_p (PR68814)
The meaning of ZERO_EXTRACT depends on BITS_BIG_ENDIAN, not on
BYTES_BIG_ENDIAN. This caused PR68814.
2015-12-11 Segher Boessenkool <segher@kernel.crashing.org>
PR rtl-optimization/68814
* rtlanal.c (set_noop_p): Use BITS_BIG_ENDIAN instead of
BYTES_BIG_ENDIAN.
From-SVN: r231547
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/rtlanal.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 27ccfc8..d662229 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-12-11 Segher Boessenkool <segher@kernel.crashing.org> + + PR rtl-optimization/68814 + * rtlanal.c (set_noop_p): Use BITS_BIG_ENDIAN instead of + BYTES_BIG_ENDIAN. + 2015-12-10 Nathan Sidwell <nathan@acm.org> * config/nvptx/nvptx.c (nvptx_function_arg, diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 67098e5..f893bca 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -1534,7 +1534,7 @@ set_noop_p (const_rtx set) if (GET_CODE (dst) == ZERO_EXTRACT) return rtx_equal_p (XEXP (dst, 0), src) - && ! BYTES_BIG_ENDIAN && XEXP (dst, 2) == const0_rtx + && !BITS_BIG_ENDIAN && XEXP (dst, 2) == const0_rtx && !side_effects_p (src); if (GET_CODE (dst) == STRICT_LOW_PART) |