diff options
author | Neil Booth <neil@daikokuya.demon.co.uk> | 2002-04-01 20:26:18 +0000 |
---|---|---|
committer | Neil Booth <neil@gcc.gnu.org> | 2002-04-01 20:26:18 +0000 |
commit | dffd7eb68ad26f910304f7f68fd2b25bbae71ae8 (patch) | |
tree | c7580c1e88743ac267d338426669e9cd12ea3bed /gcc/ada | |
parent | 544ef5b5df52ed81deaea9123483195dbb1fa376 (diff) | |
download | gcc-dffd7eb68ad26f910304f7f68fd2b25bbae71ae8.zip gcc-dffd7eb68ad26f910304f7f68fd2b25bbae71ae8.tar.gz gcc-dffd7eb68ad26f910304f7f68fd2b25bbae71ae8.tar.bz2 |
c-decl.c (grokdeclarator): Update.
* c-decl.c (grokdeclarator): Update.
* c-lang.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
* c-tree.h (c_mark_addressable): New.
* c-typeck.c (default_function_array_conversion, build_unary_op,
build_array_ref, convert_for_assignment): Update.
(mark_addressable): Rename.
* calls.c (try_to_integrate, expand_call): Use langhook.
* expr.c (expand_expr): Use langhook.
* langhooks-def.h (LANG_HOOKS_INITIALIZER): Update.
* langhooks.h (struct lang_hooks): New hook.
* stmt.c (expand_asm_operands): Use langhook.
* tree.h (mark_addressable): Remove.
ada:
* decl.c (gnat_to_gnu_entity): Update.
* gigi.h (mark_addressable): Rename.
* misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
* trans.c (tree_transform): Update.
* utils.c (create_var_decl): Update.
* util2.c (build_binary_op, build_unary_op,
fill_vms_descriptor): Update.
(mark_addressable): Rename, update.
cp:
* call.c (build_addr_func): Update.
* class.c (resolve_address_of_overloaded_function): Update.
* cp-lang.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
* cp-tree.h (cxx_mark_addressable): New.
* decl.c (register_dtor_fn, cxx_maybe_build_cleanup): Update.
* decl2.c (build_cleanup): Update.
* except.c (build_throw): Update.
* init.c (resolve_offset_ref): Update.
* pt.c (convert_nontype_argument): Update.
* semantics.c (finish_asm_stmt, simplify_affr_init_exprs_r): Update.
* typeck.c (decay_conversion, build_array_ref, build_unary_op,
unary_complex_lvalue): Update.
(mark_addressable): Rename.
f:
* com.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
(mark_addressable): Rename.
(ffecom_arrayref_, ffecom_1): Update.
java:
* java-tree.h (java_mark_addressable): New.
* lang.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
* typeck.c (mark_addressable): Rename, update.
objc:
* objc-lang.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
From-SVN: r51705
Diffstat (limited to 'gcc/ada')
-rw-r--r-- | gcc/ada/ChangeLog | 11 | ||||
-rw-r--r-- | gcc/ada/decl.c | 2 | ||||
-rw-r--r-- | gcc/ada/gigi.h | 4 | ||||
-rw-r--r-- | gcc/ada/misc.c | 2 | ||||
-rw-r--r-- | gcc/ada/trans.c | 9 | ||||
-rw-r--r-- | gcc/ada/utils.c | 2 | ||||
-rw-r--r-- | gcc/ada/utils2.c | 22 |
7 files changed, 33 insertions, 19 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 8e7367f..545940f 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,16 @@ 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk> + * decl.c (gnat_to_gnu_entity): Update. + * gigi.h (mark_addressable): Rename. + * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine. + * trans.c (tree_transform): Update. + * utils.c (create_var_decl): Update. + * util2.c (build_binary_op, build_unary_op, + fill_vms_descriptor): Update. + (mark_addressable): Rename, update. + +2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk> + * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type): Rename. * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE, diff --git a/gcc/ada/decl.c b/gcc/ada/decl.c index 32cd00e..adf1d35 100644 --- a/gcc/ada/decl.c +++ b/gcc/ada/decl.c @@ -1055,7 +1055,7 @@ gnat_to_gnu_entity (gnat_entity, gnu_expr, definition) if (Has_Nested_Block_With_Handler (Scope (gnat_entity)) && Exception_Mechanism != GCC_ZCX) { - mark_addressable (gnu_decl); + gnat_mark_addressable (gnu_decl); flush_addressof (gnu_decl); } diff --git a/gcc/ada/gigi.h b/gcc/ada/gigi.h index 32fcaef..7342117 100644 --- a/gcc/ada/gigi.h +++ b/gcc/ada/gigi.h @@ -727,8 +727,8 @@ extern tree build_allocator PARAMS((tree, tree, tree, Entity_Id, extern tree fill_vms_descriptor PARAMS((tree, Entity_Id)); /* Indicate that we need to make the address of EXPR_NODE and it therefore - should not be allocated in a register. Return 1 if successful. */ -extern int mark_addressable PARAMS((tree)); + should not be allocated in a register. Return true if successful. */ +extern bool gnat_mark_addressable PARAMS((tree)); /* These functions return the basic data type sizes and related parameters about the target machine. */ diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c index 866afc3..520b029 100644 --- a/gcc/ada/misc.c +++ b/gcc/ada/misc.c @@ -114,6 +114,8 @@ static rtx gnat_expand_expr PARAMS ((tree, rtx, enum machine_mode, #define LANG_HOOKS_GET_ALIAS_SET gnat_get_alias_set #undef LANG_HOOKS_EXPAND_EXPR #define LANG_HOOKS_EXPAND_EXPR gnat_expand_expr +#undef LANG_HOOKS_MARK_ADDRESSABLE +#define LANG_HOOKS_MARK_ADDRESSABLE gnat_mark_addressable #undef LANG_HOOKS_PRINT_DECL #define LANG_HOOKS_PRINT_DECL gnat_print_decl #undef LANG_HOOKS_PRINT_TYPE diff --git a/gcc/ada/trans.c b/gcc/ada/trans.c index 19c7b01..371f7f2 100644 --- a/gcc/ada/trans.c +++ b/gcc/ada/trans.c @@ -421,7 +421,7 @@ tree_transform (gnat_node) right now. */ if (TREE_VALUE (gnu_except_ptr_stack) != 0) { - mark_addressable (gnu_result); + gnat_mark_addressable (gnu_result); flush_addressof (gnu_result); } @@ -4764,9 +4764,10 @@ convert_with_check (gnat_type, gnu_expr, overflow_p, range_p, truncate_p) return convert (gnu_type, gnu_result); } -/* Return 1 if GNU_EXPR can be directly addressed. This is the case unless - it is an expression involving computation or if it involves a bitfield - reference. This returns the same as mark_addressable in most cases. */ +/* Return 1 if GNU_EXPR can be directly addressed. This is the case + unless it is an expression involving computation or if it involves + a bitfield reference. This returns the same as + gnat_mark_addressable in most cases. */ static int addressable_p (gnu_expr) diff --git a/gcc/ada/utils.c b/gcc/ada/utils.c index 58b7af6..556e012 100644 --- a/gcc/ada/utils.c +++ b/gcc/ada/utils.c @@ -1361,7 +1361,7 @@ create_var_decl (var_name, asm_name, type, var_init, const_flag, public_flag, /* If this is volatile, force it into memory. */ if (TREE_SIDE_EFFECTS (var_decl)) - mark_addressable (var_decl); + gnat_mark_addressable (var_decl); if (TREE_CODE (var_decl) != CONST_DECL) rest_of_decl_compilation (var_decl, 0, global_bindings_p (), 0); diff --git a/gcc/ada/utils2.c b/gcc/ada/utils2.c index 2872474..0e8ada4 100644 --- a/gcc/ada/utils2.c +++ b/gcc/ada/utils2.c @@ -817,7 +817,7 @@ build_binary_op (op_code, result_type, left_operand, right_operand) if (! TREE_CONSTANT (right_operand) || ! TREE_CONSTANT (TYPE_MIN_VALUE (right_type)) || op_code == ARRAY_RANGE_REF) - mark_addressable (left_operand); + gnat_mark_addressable (left_operand); modulus = 0; break; @@ -1238,7 +1238,7 @@ build_unary_op (op_code, result_type, operand) if (type != error_mark_node) operation_type = build_pointer_type (type); - mark_addressable (operand); + gnat_mark_addressable (operand); result = fold (build1 (ADDR_EXPR, operation_type, operand)); } @@ -1991,7 +1991,7 @@ fill_vms_descriptor (expr, gnat_formal) tree const_list = 0; expr = maybe_unconstrained_array (expr); - mark_addressable (expr); + gnat_mark_addressable (expr); for (field = TYPE_FIELDS (record_type); field; field = TREE_CHAIN (field)) { @@ -2009,10 +2009,10 @@ fill_vms_descriptor (expr, gnat_formal) } /* Indicate that we need to make the address of EXPR_NODE and it therefore - should not be allocated in a register. Return 1 if successful. */ + should not be allocated in a register. Returns true if successful. */ -int -mark_addressable (expr_node) +bool +gnat_mark_addressable (expr_node) tree expr_node; { while (1) @@ -2030,24 +2030,24 @@ mark_addressable (expr_node) case CONSTRUCTOR: TREE_ADDRESSABLE (expr_node) = 1; - return 1; + return true; case VAR_DECL: case PARM_DECL: case RESULT_DECL: put_var_into_stack (expr_node); TREE_ADDRESSABLE (expr_node) = 1; - return 1; + return true; case FUNCTION_DECL: TREE_ADDRESSABLE (expr_node) = 1; - return 1; + return true; case CONST_DECL: return (DECL_CONST_CORRESPONDING_VAR (expr_node) != 0 - && (mark_addressable + && (gnat_mark_addressable (DECL_CONST_CORRESPONDING_VAR (expr_node)))); default: - return 1; + return true; } } |