aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorOlivier Hainque <hainque@act-europe.fr>2003-04-14 23:07:12 +0200
committerRichard Kenner <kenner@gcc.gnu.org>2003-04-14 17:07:12 -0400
commit9ceca3020a62d208756ff281a189ce9f955fbc80 (patch)
tree652df28dade21191f3be003ebe664b78678e4891 /gcc/expr.c
parent712b7a052fc05a2373ed40c1fd13b3cfb0e7df62 (diff)
downloadgcc-9ceca3020a62d208756ff281a189ce9f955fbc80.zip
gcc-9ceca3020a62d208756ff281a189ce9f955fbc80.tar.gz
gcc-9ceca3020a62d208756ff281a189ce9f955fbc80.tar.bz2
expr.c (highest_pow2_factor): Return unsigned.
* expr.c (highest_pow2_factor): Return unsigned. * expr.h (offset_address): Likewise. * emit-rtl.c (offset_address): POW2 argument now unsigned. From-SVN: r65589
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index ad8993d..d203424 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -166,8 +166,11 @@ static rtx store_field PARAMS ((rtx, HOST_WIDE_INT,
tree, enum machine_mode, int, tree,
int));
static rtx var_rtx PARAMS ((tree));
-static HOST_WIDE_INT highest_pow2_factor PARAMS ((tree));
-static HOST_WIDE_INT highest_pow2_factor_for_type PARAMS ((tree, tree));
+
+static unsigned HOST_WIDE_INT highest_pow2_factor PARAMS ((tree));
+static unsigned HOST_WIDE_INT highest_pow2_factor_for_type PARAMS ((tree,
+ tree));
+
static int is_aligning_offset PARAMS ((tree, tree));
static rtx expand_increment PARAMS ((tree, int, int));
static rtx do_store_flag PARAMS ((tree, rtx, enum machine_mode, int));
@@ -6335,11 +6338,11 @@ check_max_integer_computation_mode (exp)
/* Return the highest power of two that EXP is known to be a multiple of.
This is used in updating alignment of MEMs in array references. */
-static HOST_WIDE_INT
+static unsigned HOST_WIDE_INT
highest_pow2_factor (exp)
tree exp;
{
- HOST_WIDE_INT c0, c1;
+ unsigned HOST_WIDE_INT c0, c1;
switch (TREE_CODE (exp))
{
@@ -6405,12 +6408,12 @@ highest_pow2_factor (exp)
/* Similar, except that it is known that the expression must be a multiple
of the alignment of TYPE. */
-static HOST_WIDE_INT
+static unsigned HOST_WIDE_INT
highest_pow2_factor_for_type (type, exp)
tree type;
tree exp;
{
- HOST_WIDE_INT type_align, factor;
+ unsigned HOST_WIDE_INT type_align, factor;
factor = highest_pow2_factor (exp);
type_align = TYPE_ALIGN (type) / BITS_PER_UNIT;