aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1992-06-30 03:53:40 +0000
committerRichard Stallman <rms@gnu.org>1992-06-30 03:53:40 +0000
commite6a28f26982094a729b36becbe106cab87437905 (patch)
tree7b9ef0d79563a9c2d39c695c6f27e597b011bc46
parent4b578ebfe603922ee6e14b34eff1509e1615b51c (diff)
downloadgcc-e6a28f26982094a729b36becbe106cab87437905.zip
gcc-e6a28f26982094a729b36becbe106cab87437905.tar.gz
gcc-e6a28f26982094a729b36becbe106cab87437905.tar.bz2
*** empty log message ***
From-SVN: r1359
-rw-r--r--gcc/fold-const.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index e1ad1ca..baea8f4 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -2613,7 +2613,10 @@ merge_component_references (code, truth_type, lhs, rhs)
if (l_const == 0)
{
if (ll_bitsize != lr_bitsize || rl_bitsize != rr_bitsize
- || ll_unsignedp != lr_unsignedp || rl_unsignedp != rr_unsignedp)
+ || ll_unsignedp != lr_unsignedp || rl_unsignedp != rr_unsignedp
+ /* Make sure the two fields on the right
+ correspond to the left without being swapped. */
+ || ll_bitpos - rl_bitpos != lr_bitpos - rr_bitpos)
return 0;
first_bit = MIN (lr_bitpos, rr_bitpos);