aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRoger Sayle <roger@eyesopen.com>2002-07-03 21:00:23 +0000
committerRoger Sayle <sayle@gcc.gnu.org>2002-07-03 21:00:23 +0000
commit3129af4c94d267c825d6e3dfa651477c6bd6208f (patch)
treebed15451c157820985b41f07f0c788e0a6ecba32 /gcc
parentfcad420e8ff702f5c03de5ce8017f5d471bba0c2 (diff)
downloadgcc-3129af4c94d267c825d6e3dfa651477c6bd6208f.zip
gcc-3129af4c94d267c825d6e3dfa651477c6bd6208f.tar.gz
gcc-3129af4c94d267c825d6e3dfa651477c6bd6208f.tar.bz2
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog10
-rw-r--r--gcc/combine.c15
2 files changed, 17 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4000c79..6f8b48b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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>
diff --git a/gcc/combine.c b/gcc/combine.c
index c94eddc..70ca445 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -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