Commit aaaec114 by Nick Clifton Committed by Nick Clifton

Cope with down shifting a 32 bit constant on a 64 bit host.

From-SVN: r29655
parent 0a16ce6f
Fri Sep 24 17:10:56 1999 Nick Clifton <nickc@cygnus.com>
* combine.c (simplify_comparison): Cope with downshifting a 32 bit
constant on a 64 bit host. Patch supplied by Geoffrey Keating
<geoffk@cygnus.com>.
Fri Sep 24 10:48:10 1999 Bernd Schmidt <bernds@cygnus.co.uk> Fri Sep 24 10:48:10 1999 Bernd Schmidt <bernds@cygnus.co.uk>
* builtins.c (expand_builtin): Use MD_EXPAND_BUILTIN if defined. * builtins.c (expand_builtin): Use MD_EXPAND_BUILTIN if defined.
......
...@@ -10364,10 +10364,10 @@ simplify_comparison (code, pop0, pop1) ...@@ -10364,10 +10364,10 @@ simplify_comparison (code, pop0, pop1)
{ {
/* We must perform a logical shift, not an arithmetic one, /* We must perform a logical shift, not an arithmetic one,
as we want the top N bits of C to be zero. */ as we want the top N bits of C to be zero. */
unsigned HOST_WIDE_INT temp = const_op; unsigned HOST_WIDE_INT temp = const_op & GET_MODE_MASK (mode);
temp >>= INTVAL (XEXP (op0, 1)); temp >>= INTVAL (XEXP (op0, 1));
op1 = GEN_INT (temp); op1 = GEN_INT (trunc_int_for_mode (temp, mode));
op0 = XEXP (op0, 0); op0 = XEXP (op0, 0);
continue; continue;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment