diff options
author | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | 2000-02-10 22:05:40 +0000 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 2000-02-10 17:05:40 -0500 |
commit | 729a212576ebc14125d4c8e33a5b13ba43eeadec (patch) | |
tree | 6986eb3ff22851f6ba40b08e9a2247fb26755e79 /gcc/expmed.c | |
parent | 5e4900c7f4945f48d9660d2682bbbcce40ec9603 (diff) | |
download | gcc-729a212576ebc14125d4c8e33a5b13ba43eeadec.zip gcc-729a212576ebc14125d4c8e33a5b13ba43eeadec.tar.gz gcc-729a212576ebc14125d4c8e33a5b13ba43eeadec.tar.bz2 |
combine.c (make_extraction, [...]): Avoid warning on mixed-signedness conditionals.
* combine.c (make_extraction, force_to_mode): Avoid warning on
mixed-signedness conditionals.
(make_field_assignment, nonzero_bits): Likewise.
* expmed.c (store_fixed_bit_field): ALIGN arg now unsigned.
(store_split_bit_field, extract_split_bit_field): Likewise.
(extract_fixed_bit_field, store_bit_field,
* expr.c: Change alignment to be unsigned everywhere.
(move_by_pieces, store_constructor_field, store_constructor):
Alignment parm is unsigned.
(emit_block_move, emit_group_load, emit_group_store): Likewise.
(clear_storage, emit_push_insn, compare_from_rtx): Likewise.
(do_compare_rtx_and_jump): Likewise.
(move_by_pieces_ninsns, clear_by_pieces): Likewise.
Compare align with GET_MODE_ALIGNMENT.
(expand_expr_unaligned): Pointer to alignment is pointer to unsigned.
(get_inner_reference): Likewise.
(copy_blkmode_from_reg, emit_push_insn): Remove unneeded casts.
(expand_assignment): Local vars for alignment now unsigned.
(store_constructor, store_field, expand_expr, do_jump): Likewise.
(do_compare_and_jump): Likewise.
(store_field): Call new function expr_align.
* expr.h (emit_block_move, emit_group_load, emit_group_store):
Alignment arg now unsigned.
(clear_storage, emit_push_insn, compare_from_rtx): Likewise.
(do_compare_rtx_and_jump, store_bit_field): Likewise.
(extract_bit_field): Likewise.
* fold-const.c (add_double): Add cast to eliminate signedness warning.
* machmode.h (GET_MODE_ALIGNMENT): Result is unsigned.
(get_best_mode): Alignment arg is unsigned.
* rtl.h (move_by_pieces): Likewise.
* store-layout.c (maximum_field_alignment, set_alignment):
Now unsigned.
(layout_decl): Alignment arg is now unsigned.
Remove unneeded casts.
(layout_record, layout_union, layout_type): Remove unneeded casts.
Local alignment variables now unsigned.
(get_best_mode): Alignment arg now unsigned.
* tree.c (expr_align): New function.
* tree.h (expr_align): Likewise.
(maximum_field_alignment, set_alignment): Now unsigned.
(get_inner_reference): Alignment argument is now pointer to unsigned.
* varasm.c (assemble_variable): Add cast to eliminate warning.
From-SVN: r31904
Diffstat (limited to 'gcc/expmed.c')
-rw-r--r-- | gcc/expmed.c | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/gcc/expmed.c b/gcc/expmed.c index 6f31b8d..f938375 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -34,15 +34,19 @@ Boston, MA 02111-1307, USA. */ #include "real.h" #include "recog.h" -static void store_fixed_bit_field PARAMS ((rtx, int, int, int, rtx, int)); -static void store_split_bit_field PARAMS ((rtx, int, int, rtx, int)); +static void store_fixed_bit_field PARAMS ((rtx, int, int, int, rtx, + unsigned int)); +static void store_split_bit_field PARAMS ((rtx, int, int, rtx, + unsigned int)); static rtx extract_fixed_bit_field PARAMS ((enum machine_mode, rtx, int, - int, int, rtx, int, int)); + int, int, rtx, int, + unsigned int)); static rtx mask_rtx PARAMS ((enum machine_mode, int, int, int)); static rtx lshift_value PARAMS ((enum machine_mode, rtx, int, int)); -static rtx extract_split_bit_field PARAMS ((rtx, int, int, int, int)); +static rtx extract_split_bit_field PARAMS ((rtx, int, int, int, + unsigned int)); static void do_cmp_and_jump PARAMS ((rtx, rtx, enum rtx_code, enum machine_mode, rtx)); @@ -224,7 +228,7 @@ store_bit_field (str_rtx, bitsize, bitnum, fieldmode, value, align, total_size) int bitnum; enum machine_mode fieldmode; rtx value; - int align; + unsigned int align; int total_size; { int unit = (GET_CODE (str_rtx) == MEM) ? BITS_PER_UNIT : BITS_PER_WORD; @@ -508,7 +512,7 @@ store_bit_field (str_rtx, bitsize, bitnum, fieldmode, value, align, total_size) if (bestmode == VOIDmode || (SLOW_UNALIGNED_ACCESS (bestmode, align) - && GET_MODE_SIZE (bestmode) > align)) + && GET_MODE_SIZE (bestmode) > (int) align)) goto insv_loses; /* Adjust address to point to the containing unit of that mode. */ @@ -623,7 +627,7 @@ store_fixed_bit_field (op0, offset, bitsize, bitpos, value, struct_align) register rtx op0; register int offset, bitsize, bitpos; register rtx value; - int struct_align; + unsigned int struct_align; { register enum machine_mode mode; int total_bits = BITS_PER_WORD; @@ -794,7 +798,7 @@ store_split_bit_field (op0, bitsize, bitpos, value, align) rtx op0; int bitsize, bitpos; rtx value; - int align; + unsigned int align; { int unit; int bitsdone = 0; @@ -951,7 +955,7 @@ extract_bit_field (str_rtx, bitsize, bitnum, unsignedp, int unsignedp; rtx target; enum machine_mode mode, tmode; - int align; + unsigned int align; int total_size; { int unit = (GET_CODE (str_rtx) == MEM) ? BITS_PER_UNIT : BITS_PER_WORD; @@ -1391,7 +1395,7 @@ extract_bit_field (str_rtx, bitsize, bitnum, unsignedp, if (bestmode == VOIDmode || (SLOW_UNALIGNED_ACCESS (bestmode, align) - && GET_MODE_SIZE (bestmode) > align)) + && GET_MODE_SIZE (bestmode) > (int) align)) goto extv_loses; /* Compute offset as multiple of this unit, @@ -1530,7 +1534,7 @@ extract_fixed_bit_field (tmode, op0, offset, bitsize, bitpos, register rtx op0, target; register int offset, bitsize, bitpos; int unsignedp; - int align; + unsigned int align; { int total_bits = BITS_PER_WORD; enum machine_mode mode; @@ -1748,7 +1752,8 @@ lshift_value (mode, value, bitpos, bitsize) static rtx extract_split_bit_field (op0, bitsize, bitpos, unsignedp, align) rtx op0; - int bitsize, bitpos, unsignedp, align; + int bitsize, bitpos, unsignedp; + unsigned int align; { int unit; int bitsdone = 0; |