c-opts.c (c_common_post_options): Don't clear flag_inline_functions.

gcc/
	* c-opts.c (c_common_post_options): Don't clear
	flag_inline_functions.
	* dojump.c (clear_pending_stack_adjust): Remove check on
	flag_inline_functions, it's always true.
	* config/alpha/alpha.md (movdi_er_maybe_g): Remove splitter
	that can never trigger.
	* config/c4x/c4x.h (TARGET_CPU_CPP_BUILTINS): Don't look at
	flag_inline_trees, now that flag_inline_functions is never
	cleared.
	* config/pdp11/pdp11.h (OPTIMIZATION_OPTIONS): Don't set
	flag_inline_functions at optimization levels greater than
	or equal to 3.  This is already done by default.

ada/
	* misc.c (gnat_post_options): Don't clear
	flag_inline_functions.

cp/
	* decl.c (cxx_init_decl_processing): Don't clear
	flag_inline_functions.

fortran/
	* options.c (gfc_post_options): Don't clear flag_inline_functions.

java/
	* class.c (make_class_data): Don't check flag_inline_functions.
	* lang.c (flag_really_inline): Remove unused flag.
	(java_handle_option): Don't set it here.  Remove special handling
	of flag_inline_functions for Java.
	(java_init): Don't set flag_inline_trees here.  Already done...
	(java_post_options): ...here.  Don't clear flag_inline_functions.

From-SVN: r91190
This commit is contained in:
Steven Bosscher 2004-11-24 19:45:32 +00:00 committed by Steven Bosscher
parent 41f683efe5
commit 39afeb1aad
15 changed files with 46 additions and 75 deletions

View File

@ -1,3 +1,18 @@
2004-11-24 Steven Bosscher <stevenb@suse.de>
* c-opts.c (c_common_post_options): Don't clear
flag_inline_functions.
* dojump.c (clear_pending_stack_adjust): Remove check on
flag_inline_functions, it's always true.
* config/alpha/alpha.md (movdi_er_maybe_g): Remove splitter
that can never trigger.
* config/c4x/c4x.h (TARGET_CPU_CPP_BUILTINS): Don't look at
flag_inline_trees, now that flag_inline_functions is never
cleared.
* config/pdp11/pdp11.h (OPTIMIZATION_OPTIONS): Don't set
flag_inline_functions at optimization levels greater than
or equal to 3. This is already done by default.
2004-11-24 Kazu Hirata <kazu@cs.umass.edu>
* tree-outof-ssa.c (eliminate_build): Use g->e->dest_idx

View File

@ -1,3 +1,8 @@
2004-11-24 Steven Bosscher <stevenb@suse.de>
* misc.c (gnat_post_options): Don't clear
flag_inline_functions.
2004-11-22 Andrew Pinski <pinskia@physics.uc.edu>
PR ada/17986

View File

@ -352,10 +352,7 @@ gnat_post_options (const char **pfilename ATTRIBUTE_UNUSED)
if (!flag_no_inline)
flag_no_inline = 1;
if (flag_inline_functions)
{
flag_inline_trees = 2;
flag_inline_functions = 0;
}
flag_inline_trees = 2;
return false;
}

View File

@ -945,10 +945,7 @@ c_common_post_options (const char **pfilename)
if (!flag_no_inline)
flag_no_inline = 1;
if (flag_inline_functions)
{
flag_inline_trees = 2;
flag_inline_functions = 0;
}
flag_inline_trees = 2;
/* If we are given more than one input file, we must use
unit-at-a-time mode. */

View File

@ -5379,41 +5379,6 @@
(const_int 0)] UNSPEC_LITERAL))]
"operands[2] = pic_offset_table_rtx;")
;; With RTL inlining, at -O3, rtl is generated, stored, then actually
;; compiled at the end of compilation. In the meantime, someone can
;; re-encode-section-info on some symbol changing it e.g. from global
;; to local-not-small. If this happens, we'd have emitted a plain
;; load rather than a high+losum load and not recognize the insn.
;;
;; So if rtl inlining is in effect, we delay the global/not-global
;; decision until rest_of_compilation by wrapping it in an UNSPEC_SYMBOL.
(define_insn_and_split "movdi_er_maybe_g"
[(set (match_operand:DI 0 "register_operand" "=r")
(unspec:DI [(match_operand:DI 1 "symbolic_operand" "")]
UNSPEC_SYMBOL))]
"TARGET_EXPLICIT_RELOCS && flag_inline_functions"
"#"
""
[(set (match_dup 0) (match_dup 1))]
{
if (local_symbolic_operand (operands[1], Pmode)
&& !small_symbolic_operand (operands[1], Pmode))
{
rtx subtarget = no_new_pseudos ? operands[0] : gen_reg_rtx (Pmode);
rtx tmp;
tmp = gen_rtx_HIGH (Pmode, operands[1]);
if (reload_completed)
tmp = gen_rtx_PLUS (Pmode, pic_offset_table_rtx, tmp);
emit_insn (gen_rtx_SET (VOIDmode, subtarget, tmp));
tmp = gen_rtx_LO_SUM (Pmode, subtarget, operands[1]);
emit_insn (gen_rtx_SET (VOIDmode, operands[0], tmp));
DONE;
}
})
(define_insn "movdi_er_tlsgd"
[(set (match_operand:DI 0 "register_operand" "=r")
(unspec:DI [(match_operand:DI 1 "register_operand" "r")

View File

@ -29,14 +29,12 @@
#define TARGET_CPU_CPP_BUILTINS() \
do \
{ \
/* ??? HACK. We shouldn't have flag_inline_trees at all. */ \
extern int flag_inline_trees; \
if (!TARGET_SMALL) \
builtin_define ("_BIGMODEL"); \
if (!TARGET_MEMPARM) \
builtin_define ("_REGPARM"); \
if (flag_inline_functions \
|| flag_inline_trees) \
if (flag_inline_functions) \
builtin_define ("_INLINE"); \
if (TARGET_C3X) \
{ \

View File

@ -1144,8 +1144,6 @@ JMP FUNCTION 0x0058 0x0000 <- FUNCTION
{ \
if (LEVEL >= 3) \
{ \
if (! SIZE) \
flag_inline_functions = 1; \
flag_omit_frame_pointer = 1; \
/* flag_unroll_loops = 1; */ \
} \

View File

@ -1,3 +1,8 @@
2004-11-24 Steven Bosscher <stevenb@suse.de>
* decl.c (cxx_init_decl_processing): Don't clear
flag_inline_functions.
2004-11-24 Mark Mitchell <mark@codesourcery.com>
* pt.c (tsubst_function_type): Do not permit function types which

View File

@ -2990,10 +2990,7 @@ cxx_init_decl_processing (void)
flag_no_inline = 1;
}
if (flag_inline_functions)
{
flag_inline_trees = 2;
flag_inline_functions = 0;
}
flag_inline_trees = 2;
/* Force minimum function alignment if using the least significant
bit of function pointers to store the virtual bit. */

View File

@ -71,8 +71,7 @@ clear_pending_stack_adjust (void)
if (optimize > 0
&& (! flag_omit_frame_pointer || current_function_calls_alloca)
&& EXIT_IGNORE_STACK
&& ! (DECL_INLINE (current_function_decl) && ! flag_no_inline)
&& ! flag_inline_functions)
&& ! (DECL_INLINE (current_function_decl) && ! flag_no_inline))
discard_pending_stack_adjust ();
}

View File

@ -1,3 +1,7 @@
2004-11-24 Steven Bosscher <stevenb@suse.de>
* options.c (gfc_post_options): Don't clear flag_inline_functions.
2004-11-20 Steven G. Kargl <kargls@comcast.net>
* check.c (gfc_check_getcwd_sub): Fix seg fault.

View File

@ -109,10 +109,7 @@ gfc_post_options (const char **pfilename)
if (!flag_no_inline)
flag_no_inline = 1;
if (flag_inline_functions)
{
flag_inline_trees = 2;
flag_inline_functions = 0;
}
flag_inline_trees = 2;
/* If -pedantic, warn about the use of GNU extensions. */
if (pedantic && (gfc_option.allow_std & GFC_STD_GNU) != 0)

View File

@ -1,3 +1,12 @@
2004-11-24 Steven Bosscher <stevenb@suse.de>
* class.c (make_class_data): Don't check flag_inline_functions.
* lang.c (flag_really_inline): Remove unused flag.
(java_handle_option): Don't set it here. Remove special handling
of flag_inline_functions for Java.
(java_init): Don't set flag_inline_trees here. Already done...
(java_post_options): ...here. Don't clear flag_inline_functions.
2004-11-24 Steven Bosscher <stevenb@suse.de>
* java-gimplify.c (java_gimplify_labeled_block_expr): New function.

View File

@ -1618,7 +1618,7 @@ make_class_data (tree type)
tree init;
if (METHOD_PRIVATE (method)
&& ! flag_keep_inline_functions
&& (flag_inline_functions || optimize))
&& optimize)
continue;
init = make_method_value (method);
method_count++;

View File

@ -131,10 +131,6 @@ const char *current_encoding = NULL;
/* When nonzero, print extra version information. */
static int v_flag = 0;
/* Set nonzero if the user specified -finline-functions on the command
line. */
int flag_really_inline = 0;
JCF *current_jcf;
/* Variable controlling how dependency tracking is enabled in
@ -322,11 +318,6 @@ java_handle_option (size_t scode, const char *arg, int value)
jcf_path_extdirs_arg (arg);
break;
case OPT_finline_functions:
flag_inline_functions = value;
flag_really_inline = value;
break;
case OPT_foutput_class_dir_:
jcf_write_base_directory = arg;
break;
@ -355,9 +346,6 @@ java_init (void)
flag_minimal_debug = 0;
#endif
if (flag_inline_functions)
flag_inline_trees = 1;
/* FIXME: Indirect dispatch isn't yet compatible with static class
init optimization. */
if (flag_indirect_dispatch)
@ -603,10 +591,7 @@ java_post_options (const char **pfilename)
if (!flag_no_inline)
flag_no_inline = 1;
if (flag_inline_functions)
{
flag_inline_trees = 2;
flag_inline_functions = 0;
}
flag_inline_trees = 2;
/* Open input file. */