mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-17 18:00:55 +08:00
combine.c (struct_undo): Change types of recorded substitutions to be either "int" or "rtx"...
* combine.c (struct_undo): Change types of recorded substitutions to be either "int" or "rtx", instead of "unsigned int" and "rtx". (do_SUBST_INT): Change types of the substitution from unsigned int to int, to avoid compilation warning from SUBST_INT's only caller. (make_extraction): Add cast to avoid compilation warning. (force_to_mode): Remove cast to avoid compilation warning. From-SVN: r55221
This commit is contained in:
parent
fcad420e8f
commit
3129af4c94
@ -1,3 +1,13 @@
|
||||
2002-07-03 Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
* combine.c (struct_undo): Change types of recorded substitutions
|
||||
to be either "int" or "rtx", instead of "unsigned int" and "rtx".
|
||||
(do_SUBST_INT): Change types of the substitution from unsigned int
|
||||
to int, to avoid compilation warning from SUBST_INT's only caller.
|
||||
|
||||
(make_extraction): Add cast to avoid compilation warning.
|
||||
(force_to_mode): Remove cast to avoid compilation warning.
|
||||
|
||||
2002-07-03 Eric Botcazou <ebotcazou@multimania.com>
|
||||
Jeff Law <law@redhat.com>
|
||||
|
||||
|
@ -314,8 +314,8 @@ struct undo
|
||||
{
|
||||
struct undo *next;
|
||||
int is_int;
|
||||
union {rtx r; unsigned int i;} old_contents;
|
||||
union {rtx *r; unsigned int *i;} where;
|
||||
union {rtx r; int i;} old_contents;
|
||||
union {rtx *r; int *i;} where;
|
||||
};
|
||||
|
||||
/* Record a bunch of changes to be undone, up to MAX_UNDO of them.
|
||||
@ -339,8 +339,7 @@ static struct undobuf undobuf;
|
||||
static int n_occurrences;
|
||||
|
||||
static void do_SUBST PARAMS ((rtx *, rtx));
|
||||
static void do_SUBST_INT PARAMS ((unsigned int *,
|
||||
unsigned int));
|
||||
static void do_SUBST_INT PARAMS ((int *, int));
|
||||
static void init_reg_last_arrays PARAMS ((void));
|
||||
static void setup_incoming_promotions PARAMS ((void));
|
||||
static void set_nonzero_bits_and_sign_copies PARAMS ((rtx, rtx, void *));
|
||||
@ -472,10 +471,10 @@ do_SUBST (into, newval)
|
||||
|
||||
static void
|
||||
do_SUBST_INT (into, newval)
|
||||
unsigned int *into, newval;
|
||||
int *into, newval;
|
||||
{
|
||||
struct undo *buf;
|
||||
unsigned int oldval = *into;
|
||||
int oldval = *into;
|
||||
|
||||
if (oldval == newval)
|
||||
return;
|
||||
@ -5971,7 +5970,7 @@ make_extraction (mode, inner, pos, pos_rtx, len,
|
||||
else if (GET_CODE (inner) == ASHIFT
|
||||
&& GET_CODE (XEXP (inner, 1)) == CONST_INT
|
||||
&& pos_rtx == 0 && pos == 0
|
||||
&& len > INTVAL (XEXP (inner, 1)))
|
||||
&& len > (unsigned HOST_WIDE_INT) INTVAL (XEXP (inner, 1)))
|
||||
{
|
||||
/* We're extracting the least significant bits of an rtx
|
||||
(ashift X (const_int C)), where LEN > C. Extract the
|
||||
@ -6814,7 +6813,7 @@ force_to_mode (x, mode, mask, reg, just_select)
|
||||
|
||||
if (GET_CODE (x) == AND && GET_CODE (XEXP (x, 1)) == CONST_INT
|
||||
&& ((INTVAL (XEXP (x, 1)) & GET_MODE_MASK (GET_MODE (x)))
|
||||
== (HOST_WIDE_INT) mask))
|
||||
== mask))
|
||||
x = XEXP (x, 0);
|
||||
|
||||
/* If it remains an AND, try making another AND with the bits
|
||||
|
Loading…
x
Reference in New Issue
Block a user