From 1258ee8070967d846e414cfc231cdb39b5de7c69 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Wed, 21 Nov 2001 12:13:14 +0100 Subject: [PATCH] explow.c (probe_stack_range): Use LCT_NORMAL as second argument to emit_library_call. * explow.c (probe_stack_range): Use LCT_NORMAL as second argument to emit_library_call. * function.c (expand_main_function, expand_function_start, expand_function_end): Likewise. * profile.c (output_func_start_profiler): Likewise. * stmt.c (expand_nl_goto_receivers): Use LCT_NORETURN as second argument to emit_library_call. * optabs.c (prepare_cmp_insn): Use LCT_CONST_MAKE_BLOCK as second argument to emit_library_call. * calls.c (emit_library_call): Update fn_type description. From-SVN: r47241 --- gcc/ChangeLog | 13 +++++++++++++ gcc/calls.c | 10 ++++++---- gcc/explow.c | 2 +- gcc/function.c | 10 +++++----- gcc/optabs.c | 3 ++- gcc/profile.c | 2 +- gcc/stmt.c | 2 +- 7 files changed, 29 insertions(+), 13 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 11eaaa8..2ecc65c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,18 @@ 2001-11-21 Jakub Jelinek + * explow.c (probe_stack_range): Use LCT_NORMAL as second argument + to emit_library_call. + * function.c (expand_main_function, expand_function_start, + expand_function_end): Likewise. + * profile.c (output_func_start_profiler): Likewise. + * stmt.c (expand_nl_goto_receivers): Use LCT_NORETURN as + second argument to emit_library_call. + * optabs.c (prepare_cmp_insn): Use LCT_CONST_MAKE_BLOCK + as second argument to emit_library_call. + * calls.c (emit_library_call): Update fn_type description. + +2001-11-21 Jakub Jelinek + * c-decl.c (c_expand_deferred_function): Only call c_expand_body if fndecl is still DECL_INLINE and has DECL_RESULT. diff --git a/gcc/calls.c b/gcc/calls.c index d86b0e0..8b3b969 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -4198,10 +4198,12 @@ emit_library_call_value_1 (retval, orgfun, value, fn_type, outmode, nargs, p) and machine_modes to convert them to. The rtx values should have been passed through protect_from_queue already. - FN_TYPE will be zero for `normal' calls, one for `const' calls, - which will be enclosed in REG_LIBCALL/REG_RETVAL notes, and two for - `pure' calls, that are handled like `const' calls with extra - (use (memory (scratch)). */ + FN_TYPE should be LCT_NORMAL for `normal' calls, LCT_CONST for `const' + calls, LCT_PURE for `pure' calls, LCT_CONST_MAKE_BLOCK for `const' calls + which should be enclosed in REG_LIBCALL/REG_RETVAL notes, + LCT_PURE_MAKE_BLOCK for `purep' calls which should be enclosed in + REG_LIBCALL/REG_RETVAL notes with extra (use (memory (scratch)), + or other LCT_ value for other types of library calls. */ void emit_library_call VPARAMS((rtx orgfun, enum libcall_type fn_type, diff --git a/gcc/explow.c b/gcc/explow.c index dce99a2..c98e7f3 100644 --- a/gcc/explow.c +++ b/gcc/explow.c @@ -1471,7 +1471,7 @@ probe_stack_range (first, size) addr = convert_memory_address (ptr_mode, addr); #endif - emit_library_call (stack_check_libfunc, 0, VOIDmode, 1, addr, + emit_library_call (stack_check_libfunc, LCT_NORMAL, VOIDmode, 1, addr, ptr_mode); } diff --git a/gcc/function.c b/gcc/function.c index 4d38285..065f4ab 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -6319,7 +6319,7 @@ expand_main_function () #endif #ifndef HAS_INIT_SECTION - emit_library_call (gen_rtx_SYMBOL_REF (Pmode, NAME__MAIN), 0, + emit_library_call (gen_rtx_SYMBOL_REF (Pmode, NAME__MAIN), LCT_NORMAL, VOIDmode, 0); #endif } @@ -6545,8 +6545,8 @@ expand_function_start (subr, parms_have_cleanups) fun = XEXP (fun, 0); else abort (); - emit_library_call (profile_function_entry_libfunc, 0, VOIDmode, 2, - fun, Pmode, + emit_library_call (profile_function_entry_libfunc, LCT_NORMAL, VOIDmode, + 2, fun, Pmode, expand_builtin_return_addr (BUILT_IN_RETURN_ADDRESS, 0, hard_frame_pointer_rtx), @@ -6830,8 +6830,8 @@ expand_function_end (filename, line, end_bindings) fun = XEXP (fun, 0); else abort (); - emit_library_call (profile_function_exit_libfunc, 0, VOIDmode, 2, - fun, Pmode, + emit_library_call (profile_function_exit_libfunc, LCT_NORMAL, VOIDmode, + 2, fun, Pmode, expand_builtin_return_addr (BUILT_IN_RETURN_ADDRESS, 0, hard_frame_pointer_rtx), diff --git a/gcc/optabs.c b/gcc/optabs.c index 8f5c5ca..4514f36 100644 --- a/gcc/optabs.c +++ b/gcc/optabs.c @@ -3193,7 +3193,8 @@ prepare_cmp_insn (px, py, pcomparison, size, pmode, punsignedp, purpose) if (unsignedp && ucmp_optab->handlers[(int) mode].libfunc) libfunc = ucmp_optab->handlers[(int) mode].libfunc; - emit_library_call (libfunc, 1, word_mode, 2, x, mode, y, mode); + emit_library_call (libfunc, LCT_CONST_MAKE_BLOCK, word_mode, 2, x, mode, + y, mode); /* Immediately move the result of the libcall into a pseudo register so reload doesn't clobber the value if it needs diff --git a/gcc/profile.c b/gcc/profile.c index 4bf4ea7..57a1c72 100644 --- a/gcc/profile.c +++ b/gcc/profile.c @@ -1145,7 +1145,7 @@ output_func_start_profiler () ASM_GENERATE_INTERNAL_LABEL (buf, "LPBX", 0); table_address = force_reg (Pmode, gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf))); - emit_library_call (gen_rtx_SYMBOL_REF (Pmode, "__bb_init_func"), 0, + emit_library_call (gen_rtx_SYMBOL_REF (Pmode, "__bb_init_func"), LCT_NORMAL, mode, 1, table_address, Pmode); expand_function_end (input_filename, lineno, 0); diff --git a/gcc/stmt.c b/gcc/stmt.c index 52ae097..8017002 100644 --- a/gcc/stmt.c +++ b/gcc/stmt.c @@ -3740,7 +3740,7 @@ expand_nl_goto_receivers (thisblock) if (any_invalid) { expand_nl_goto_receiver (); - emit_library_call (gen_rtx_SYMBOL_REF (Pmode, "abort"), 0, + emit_library_call (gen_rtx_SYMBOL_REF (Pmode, "abort"), LCT_NORETURN, VOIDmode, 0); emit_barrier (); } -- 2.7.4