diff options
author | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-05 22:37:41 +0000 |
---|---|---|
committer | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-05 22:37:41 +0000 |
commit | 8a06f2d42e7ea26635cdec8c373ddcacef4a5651 (patch) | |
tree | 16fd35f587497e051ac05a7ae930fd07de7f29ba /gcc/calls.c | |
parent | 1e17e73d9ec782d727fb91d99133a964dbf7fd91 (diff) | |
download | gcc-8a06f2d42e7ea26635cdec8c373ddcacef4a5651.tar.gz |
* attribs.c (handle_no_check_memory_usage_atribute): Deleted.
(c_com): Delete its reference.
* builtins.c: Delete memory checking code.
* calls.c, expr.c, function.c, stmt.c: Likewise.
* builtins.c (expand_builtin_arg_info): Remove reference to
EXPAND_MEMORY_USE_* modifiers.
* explow.c (expr_size): Likewise.
* expr.c (expand_expr, expand_increment): Likewise.
* expr.h (ARGS_SIZE_RTX): Likewise.
* function.c (assign_parms, expand_pending_sizeso): Likewise.
* c-decl.c (duplicate_decls): Don't handle DECL_NO_CHECK_MEMORY_USAGE.
* expr.c (in_check_memory_usage): Delete.
(get_push_address, get_memory_usage_from_modifier): Delete.
(expand_assigment): Use EXPAND_WRITE on destination.
(expand_expr): Delete ro_modifier.
* expr.h (expand_modifier): Delete EXPAND_MEMORY_* entries and
add EXPAND_WRITE.
(memory_use_mode): Delete.
* flags.h (flag_check_memory_usage): Deleted.
(flag_prefix_function_name): Likewise.
* function.c (expand_function_start): Don't set
current_function_check_memory_usage.
* function.h (check_memory_usage): Delete.
* libfuncs.h, optabs.c: Delete chkr_* stuff.
* stmt.c (expand_asm_opernd): Change EXPAND_MEMORY_USE_WO to
EXPAND_WRITE.
* toplev.c (flag_check_memory_usage): Deleted.
(flag_prefix_function_name): Likewise.
(f_options, process_options): Delete references to above.
* tree.h (DECL_NO_CHECK_MEMORY_USAGE): Deleted.
* varasm.c (CHKR_PREFIX): Deleted.
(make_decl_rtl): Remove flag_prefix_function_name handling.
(assemble_name): Likewise.
* doc/extend.texi: Remove no_check_memory_usage attribute.
* doc/invoke.texi: Remove -fcheck-memory-usage
and -fprefix-function-name.
* cp/decl.c (duplicate_decls): Don't copy DECL_NO_CHECK_MEMORY_USAGE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47697 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/calls.c')
-rw-r--r-- | gcc/calls.c | 42 |
1 files changed, 2 insertions, 40 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index f4637bc1242..2ab670bb32b 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -1675,17 +1675,6 @@ rtx_for_function_call (fndecl, exp) funaddr = funexp = expand_expr (TREE_OPERAND (exp, 0), NULL_RTX, VOIDmode, 0); pop_temp_slots (); /* FUNEXP can't be BLKmode. */ - - /* Check the function is executable. */ - if (current_function_check_memory_usage) - { -#ifdef POINTERS_EXTEND_UNSIGNED - if (GET_MODE (funexp) != ptr_mode) - funaddr = convert_memory_address (ptr_mode, funexp); -#endif - emit_library_call (chkr_check_exec_libfunc, LCT_CONST_MAKE_BLOCK, - VOIDmode, 1, funaddr, ptr_mode); - } emit_queue (); } return funexp; @@ -2162,13 +2151,6 @@ expand_call (exp, target, ignore) /* The alignment of the stack, in bytes. */ HOST_WIDE_INT preferred_unit_stack_boundary; - /* The value of the function call can be put in a hard register. But - if -fcheck-memory-usage, code which invokes functions (and thus - damages some hard registers) can be inserted before using the value. - So, target is always a pseudo-register in that case. */ - if (current_function_check_memory_usage) - target = 0; - /* See if this is "nothrow" function call. */ if (TREE_NOTHROW (exp)) flags |= ECF_NOTHROW; @@ -3014,16 +2996,6 @@ expand_call (exp, target, ignore) force_operand (structure_value_addr, NULL_RTX))); - /* Mark the memory for the aggregate as write-only. */ - if (current_function_check_memory_usage) - emit_library_call (chkr_set_right_libfunc, LCT_CONST_MAKE_BLOCK, - VOIDmode, 3, - structure_value_addr, ptr_mode, - GEN_INT (struct_value_size), - TYPE_MODE (sizetype), - GEN_INT (MEMORY_USE_WO), - TYPE_MODE (integer_type_node)); - if (GET_CODE (struct_value_rtx) == REG) use_reg (&call_fusage, struct_value_rtx); } @@ -4422,18 +4394,8 @@ store_one_arg (arg, argblock, flags, variable_size, reg_parm_stack_space) do_pending_stack_adjust (); if (arg->value == arg->stack) - { - /* If the value is already in the stack slot, we are done. */ - if (current_function_check_memory_usage && GET_CODE (arg->stack) == MEM) - { - emit_library_call (chkr_set_right_libfunc, LCT_CONST_MAKE_BLOCK, - VOIDmode, 3, XEXP (arg->stack, 0), Pmode, - ARGS_SIZE_RTX (arg->size), - TYPE_MODE (sizetype), - GEN_INT (MEMORY_USE_RW), - TYPE_MODE (integer_type_node)); - } - } + /* If the value is already in the stack slot, we are done. */ + ; else if (arg->mode != BLKmode) { int size; |