diff options
author | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | 2000-03-07 11:41:32 +0000 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 2000-03-07 06:41:32 -0500 |
commit | 05bccae2efd712562a20afadfc2889d87323e7ca (patch) | |
tree | eedf389b906e1f6d1fda0e405c46b8b47fb6d064 /gcc/ch | |
parent | ddf0fc6c9f1eb8747c9cf6b69e48f11f779632d2 (diff) | |
download | gcc-05bccae2efd712562a20afadfc2889d87323e7ca.zip gcc-05bccae2efd712562a20afadfc2889d87323e7ca.tar.gz gcc-05bccae2efd712562a20afadfc2889d87323e7ca.tar.bz2 |
tree.h (INT_CST_LT, [...]): Remove unneeded casts.
* tree.h (INT_CST_LT, INT_CST_LT_UNSIGNED): Remove unneeded casts.
(struct tree_int_cst): int_cst_low is now unsigned HOST_WIDE_INT.
(attribute_hash_list, type_hash_canon): hashcode is now unsigned.
(type_hash_lookup, type_hash_add, type_hash_list): Likewise.
(min_precision): Result is unsignd.
(add_double, neg_double, mul_double): Low word is unsigned.
(lshift_double, rshift_double, lrotate_double): Likewise.
(rrotate_double, div_and_round_double): Likewise.
(tree_floor_log2, compare_tree_int): New functions.
(preserve_rtl_expr_temps): New declaration.
* c-common.c (declare_hidden_char_array): Use compare_tree_int.
(decl_attributes): Use tree_log2 to find alignment.
Check for TREE_INT_CST_HIGH for format args.
(min_precision): Now unsigned.
Use tree_floor_log2.
(truthvalue_conversion): Delete long-disabled code.
* c-decl.c (finish_struct): Clean up tests on field width.
(finish_function): Use compare_tree_int.
* c-pragma.c (handle_pragma_token): Use tree_log2 for alignment.
* c-typeck.c (comptypes): Use tree_int_cst_equal.
(default_conversion, digest_init): Use compare_tree_int.
(build_binary_op): Use integer_all_onesp and compare_tree_int.
Fix type errors in forming masks.
* calls.c (initialize_argument_information): Use compare_tree_int.
* dbxout.c (dbxout_type): Cast TREE_INT_CST_LOW to HOST_WIDE_INT.
* except.c (expand_eh_region_start_tree): Use compare_tree_int.
* expr.c (is_zeros_p, case INTEGER_CST): Use integer_zerop.
(store_field): Use compare_tree_int.
(expand_expr, case CONSTRUCTOR): Use TYPE_SIZE_UNIT.
(expand_expr, case ARRAY_REF): Use compare_tree_int.
(do_jump, case BIT_AND_EXPR): Use tree_floor_log2.
(do_store_flag): Use compare_tree_int.
* fold-const.c (encode, decode): Low part is always unsigned.
(force_fit_type, add_double, neg_double, mul_double): Likewise.
(lshift_double, rshift_double, lrotate_double): Likewise.
(rrotate_double, div_and_round_double, int_const_binop): Likewise.
(fold_convert): Use compare_tree_int.
(operand_equal_p, case INTEGER_CST): Use tree_int_cst_equal.
(invert_truthvalue, case INTEGER_CST): Likewise.
(fold): Use compare_tree_int; add casts for unsigned TREE_INT_CST_LOW.
* mkdeps.c (deps_dummy_targets): Make I unsigned.
* rtl.h (add_double, neg_double, mul_double): Low words are unsigned.
(lshift_double, rshift_double, lrotate_double, rrotate_double):
Likewise.
* stmt.c (expand_decl): Use compare_tree_int and mode_for_size_tree.
(expand_end_case): Use compare_tree_int.
(estimate_case_costs): Cast TREE_INT_CST_LOW to HOST_WIDE_INT.
* stor-layout.c (mode_for_size_tree): Use compare_tree_int.
(layout_decl): Likewise.
(layout_record, layout_union): Make sizes unsigned.
(layout_type, case VOID_TYPE): TYPE_SIZE must be bitsizetype.
(layout_type, case QUAL_UNION_TYPE): Use compare_tree_int.
* tree.c (struct type_hash): hashcode is unsigned.
(build_type_attribute_variant, type_hash_list): Likewise.
(type_hash_lookup, type_hash_add, type_hash_canon): Likewise.
(attribute_hash_list, build_array_type, build_method_type): Likewise.
(build_complex_type): Likewise.
(real_value_from_int_cst): Remove unneeded casts.
(integer_all_onesp): Add casts.
(tree_floor_log2, compare_tree_int): New functions.
(build_index_type): Use tree_int_cst_sgn.
* varasm.c (assemble_variable): Use compare_tree_int.
* ch/actions.c (chill_convert_for_assignment): INDEX is unsigned
HOST_WIDE_INT.
* ch/ch-tree.h (DECL_NESTING_LEVEL): Use TREE_INT_CST_HIGH
since unsigned.
* ch/except.c (chill_handle_on_labels): ALTERNATIVE is unsigned.
Use compare_tree_int.
(expand_goto_except_cleanup): Likewise.
* cp/class.c (dfs_modify_vtables): I is now unsigned.
(check_bitfield_decl): Use tree_int_cst_sgn and compare_tree_int.
(build_base_field): Add casts of TREE_INT_CST_LOW to HOST_WIDE_INT.
* cp/error.c (dump_expr): Cast TREE_INT_CST_HIGH to unsigned.
* cp/init.c (build_vec_init): Cast TREE_INT_CST_LOW to HOST_WIDE_INT.
* cp/method.c (build_overload_int): Cast TREE_INT_CST_HIGH to unsigned.
* cp/typeck.c (build_binary_op, case TRUNC_DIV_EXPR):
Call integer_all_onesp.
* cp/typeck2.c (process_init_constructor): Use compare_tree_int.
* f/com.c (ffecom_f2c_set_lio_code_): Use compare_tree_int.
(ffecom_sym_transform_, ffecom_transform_common_): Likewise.
(ffecom_transform_equiv_): Likewise.
* java/decl.c (emit_init_test_initialization): Mark KEY as unused.
* java/expr.c (build_newarray): Cast TREE_INT_CST_LOW to HOST_WIDE_INT.
(build_anewarray): Likewise.
* java/parse.y (patch_newarray): Likewise.
* java/parse.c: Regenerated.
From-SVN: r32383
Diffstat (limited to 'gcc/ch')
-rw-r--r-- | gcc/ch/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/ch/actions.c | 4 | ||||
-rw-r--r-- | gcc/ch/ch-tree.h | 2 | ||||
-rw-r--r-- | gcc/ch/except.c | 14 |
4 files changed, 21 insertions, 8 deletions
diff --git a/gcc/ch/ChangeLog b/gcc/ch/ChangeLog index 50135e9..360fcc1 100644 --- a/gcc/ch/ChangeLog +++ b/gcc/ch/ChangeLog @@ -1,3 +1,12 @@ +Mon Mar 6 17:52:48 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> + + * actions.c (chill_convert_for_assignment): INDEX is unsigned + HOST_WIDE_INT. + * ch-tree.h (DECL_NESTING_LEVEL): Use TREE_INT_CST_HIGH since unsigned. + * except.c (chill_handle_on_labels): ALTERNATIVE is unsigned. + Use compare_tree_int. + (expand_goto_except_cleanup): Likewise. + 2000-03-01 Martin von Loewis <loewis@informatik.hu-berlin.de> * decl.c (current_function_decl): Move to toplev.c. diff --git a/gcc/ch/actions.c b/gcc/ch/actions.c index c97c1b6..d7b10e6 100644 --- a/gcc/ch/actions.c +++ b/gcc/ch/actions.c @@ -567,7 +567,7 @@ chill_convert_for_assignment (type, expr, place) { tree domain_min = TYPE_MIN_VALUE (TYPE_DOMAIN (type)); tree new_list = NULL_TREE; - long index; + unsigned HOST_WIDE_INT index; tree element; for (element = TREE_OPERAND (result, 1); @@ -587,7 +587,7 @@ chill_convert_for_assignment (type, expr, place) new_list); break; case RANGE_EXPR: - for (index = TREE_INT_CST_LOW (TREE_OPERAND (purpose, 0)); + for (index = TREE_INT_CST_LOW (TREE_OPERAND (purpose, 0)); index <= TREE_INT_CST_LOW (TREE_OPERAND (purpose, 1)); index++) new_list = tree_cons (NULL_TREE, diff --git a/gcc/ch/ch-tree.h b/gcc/ch/ch-tree.h index 3aa7415..0483a1d 100644 --- a/gcc/ch/ch-tree.h +++ b/gcc/ch/ch-tree.h @@ -79,7 +79,7 @@ struct lang_identifier Predefined declarations have level -1; the global scope is level 0. */ #define DECL_NESTING_LEVEL(DECL) \ - ((DECL)->decl.vindex ? TREE_INT_CST_LOW((DECL)->decl.vindex) : -1) + ((DECL)->decl.vindex ? TREE_INT_CST_HIGH((DECL)->decl.vindex) : -1) /* Nesting of things that can have an ON-unit attached. */ extern int action_nesting_level; diff --git a/gcc/ch/except.c b/gcc/ch/except.c index a59e675..22abd04 100644 --- a/gcc/ch/except.c +++ b/gcc/ch/except.c @@ -500,7 +500,7 @@ void chill_handle_on_labels (labels) tree labels; { - int alternative = ++current_handler->prev_on_alternative; + unsigned int alternative = ++current_handler->prev_on_alternative; if (pass == 1) { tree handler_number = build_int_2 (alternative, 0); @@ -510,9 +510,13 @@ chill_handle_on_labels (labels) else { /* Find handler_number saved in pass 1. */ - tree tmp = current_handler->on_alt_list; - while (TREE_INT_CST_LOW (TREE_PURPOSE (tmp)) != alternative) - tmp = TREE_CHAIN (tmp); + tree tmp; + + for (tmp = current_handler->on_alt_list; + compare_tree_int (TREE_PURPOSE (tmp), alternative) != 0; + tmp = TREE_CHAIN (tmp)) + ; + if (expand_exit_needed) expand_exit_something (), expand_exit_needed = 0; chill_handle_case_label (TREE_PURPOSE (tmp), @@ -618,7 +622,7 @@ expand_goto_except_cleanup (label_level) tree last = NULL_TREE; for ( ; list != NULL_TREE; list = TREE_CHAIN (list)) { - if (TREE_INT_CST_LOW (TREE_PURPOSE (list)) > label_level) + if (compare_tree_int (TREE_PURPOSE (list), label_level) > 0) last = list; else break; |